您当前的位置:首页 > 知乎文章

渗透测试流程的信息收集、漏洞挖掘

时间:2022-02-28 10:47:18  知乎原文链接  作者:网盾网络安全培训

什么是渗透测试?

WEB安全渗透测试可不是随便拿个工具扫一下就可以做的,你不仅需要了解业务还需要给出相应的解决方案。这也是渗透测试和入侵的最大区别,入侵可以不择手段地(甚至是具有破坏性的)拿到系统权限,而渗透测试则是出于保护系统的目的,更全面地找出测试对象的安全隐患。渗透测试的第一步就是信息收集,这也是渗透测试最重要的一步,全面的信息收集是对渗透测试的保障。下面我就渗透测试相关术语、渗透测试完整流程、信息收集,这三点总结了一些东西,希望可以给看到的朋友们一些帮助。

一、渗透测试相关术语:

1、肉鸡:被黑客入侵并被长期驻扎的计算机或服务器。可以随意控制,可以是任意系统的设备,对象可以是企业,个人,政府等等所有单位。

2、抓鸡:利用使用量大的程序的漏洞,使用自动话方式获取肉鸡的行为。

3、提权:操作系统低权限的账户将自己提升为管理员权限使用的方法。

4、后门:黑客为了对主机进行长期的控制,在机器上种植的一段程序或留下的一个“入口”。

5、跳板:使用肉鸡IP来实施攻击其他目标,以便更好的隐藏自己的身份信息。

6、旁站入侵:即同服务器下的网站入侵,入侵之后可以通过提权目录等手段拿到目标网站的权限。

7、C段入侵:即同C段下服务器入侵。如目标IP为192.168.180.253入侵192.168.180.*的任意一台机器,然后利用一些黑客工具嗅探获取在网络上传输的各种信息。

8、黑盒测试:在未授权的情况下,模拟黑客的攻击方式和思维方式,来评估计算机网络系统可能存在的安全风险。黑盒测试不同于黑客入侵,并不等于黑站。黑盒测试考验的是综合的能力(OS、Database、Script code、思路、社工),思路与经验积累往往决定成败。

9、白盒测试:相对黑盒测试,白盒测试基本是从内部发起的。白盒测试与黑盒测试恰恰相反,测试者可以通过正常渠道向被测单位取得各种资料,包括网络拓扑、员工资料甚至网站或其他程序的代码片段,也能够与单位的其他员工进行面对面的沟通。

10、黑白盒的另外一种说法:知道源代码和不知道源代码的渗透测试。这时,黑盒测试还是传统的渗透测试,而白盒测试就偏向于代码审计。

11、APT(Advanced Persistent Threat)攻击:高级可持续攻击,是指组织(特别是政府)或者小团体利用先进的攻击手段对特定目标进行长期持续性网络攻击的攻击形式。这种攻击方式有三个特点:极强的隐蔽性、潜伏期长持续性强、目标性强。

12、CVE(Common Vulnerabilities and Exposures公共漏洞展示):最初不同安全工具和数据库对同一个漏洞采用各自的命名规则,导致不同安全工具之间交互十分困难;CVE旨在为同一个漏洞提供一个统一而权威的编号以消除命名混乱带来的困难。

13、CVSS(Common Vulnerability Scoring System,通用漏洞评分系统):CVSS是由NIAC(National Infrastructure Advisory Council)开发,FIRST(Forum of Incident Response and Security Teams)维护的一套漏洞评分系统,旨在给人们提供一种漏洞严重性量化方法,可直接使用评分计算器:first.org/cvss/calculat

14、CWE(Common Weakness Enumeration,通用缺陷列表):CVE是对具体漏洞的编号,不同漏洞他们所属的漏洞类型可能是一样的,比如都是缓冲区溢出。CWE正是对漏洞类型的编号,CWE当前共收录了716类安全缺陷。CWE旨在按类型向用户介绍安全缺陷,并提供该缺陷类型的处理方法。漏洞分类最出名的大概是OWASP Top 10,但owasp首先是针对Web的然后是Top10所以它并不全,CWE是更加全面细致的划分。

15、0day:被发现(且一般有exp)但官方尚未发布补丁或者修复方法的Vulnerability。

1day:已被发现,官方刚发布补丁但网络上还大量存在的Vulnerability。

16、Poc(Proof of Concept):能证明漏洞存在的代码。

exp(exploit):能利用漏洞的方式。

payload:攻击载荷,被送到目标机器执行的整段代码。

17、WEB指纹:WEB指纹也叫WEB应用指纹。由于所使用的工具、技术、实现方式等因素的影响,每个web网站都形成了一些独有的特点,我们把这样的特点叫做WEB应用指纹。

WEB指纹分类:

class="ztext-empty-paragraph">

class="ztext-empty-paragraph">

二、渗透测试完整流程:

常规渗透测试流程:

明确目标→信息收集→漏洞探测→漏洞验证→信息分析→获取所需→信息整理→形成报告

1、明确目标:

确认范围:测试目标的范围,IP,域名,内外网。

确认规则:能渗透到什么程度,时间,能否提权等。

确认需求:WEB应用的漏洞(新上线程序)?业务逻辑漏洞(针对业务的)?人员权限管理漏洞(针对人员、权限)?等等,要做到立体全方位。

2、信息收集:

方式:主动扫描,开放搜索:利用搜索引擎获得后台,未授权页面,敏感url等。

基础信息:真实IP,网段,域名,端口。

系统信息:操作系统的版本。

应用信息:各端口的应用,例如WEB应用,邮件应用等。

版本信息:所有这些探测到的东西的版本。

人员信息:域名注册人员信息,WEB应用中网站发帖人的id,管理员姓名等。

防护信息:试着看能否探测到防护设备。

3、漏洞探测:

方法:使用漏扫,例如:AWVS、IBM appscan等。

结合漏洞去exploit-db等网址找利用。

在网上寻找验证poc。

内容:系统漏洞:系统没有及时打补丁。

Websever漏洞:Websever配置问题。

Web应用漏洞:Web应用开发问题。

其它端口服务漏洞

通信安全

4、漏洞验证:

自动化验证:结合自动化扫描工具提供的结果。

手动验证:根据公共资源进行验证。

试验验证:自己搭建模拟环境进行验证。

登陆猜解:有时可以尝试猜解一下登陆的账号密码等信息。

业务漏洞验证:如发现业务漏洞,要进行验证。

5、信息分析:

精准打击:准备好上一步探测到的漏洞的exp,用来精准打击。

绕过防御机制:是否有防火墙等设备,如何绕过。

定制攻击路径:最佳工具路径,根据薄弱入口,高内网权限位置,最终目标。

绕过检测机制:是否有检测机制,流量监控,杀毒软件,恶意代码检测等(免杀)。

攻击代码:经过试验得来的代码,包括不限于xss代码,sql注入语句等。

6、获取所需:

实施攻击:根据前几步的结果,进行攻击。

获取内部信息:基础设施(网络连接,路由,拓扑等)。

进一步渗透:内网入侵,敏感目标。

持续性存在:一般我们对客户做渗透不需要。rootkit,后门,添加管理账号等。

清处痕迹:清理相关日志(访问,操作),上传文件等。

7、信息整理:

整理渗透工具:整理渗透过程中用到的代码,poc,exp等。

整理收集信息:整理渗透过程中收集的一切信息。

整理漏洞信息:整理渗透过程中遇到的各种漏洞,各种脆弱位置信息。

目的:为了最后形成报告,形成测试结果使用。

8、形成报告:

按需整理:按照之前第一步跟客户确定好的范围,需要来整理资料,并将资料形成报告。

补充介绍:要对漏洞成因,验证过程和带来危害进行分析。

修补建议:当然要对所有产生的问题提出合理高效安全的解决办法。

渗透测试报告编写:

封皮

明确重点和要求

给谁看?不同职位的人关注的侧重点不一样

内容提要

漏洞列表(一页纸内)

过程清晰准确

工具(版本和功能)

渗透测试团队成员及联系方式

修补建议

流程总结:

class="ztext-empty-paragraph">

class="ztext-empty-paragraph">

三、信息收集

①:域名信息

1、whois

用法:在线工具:whois.chinaz.com或kali终端输入whois

注册人、邮箱、地址、电话、DNS

2、Google hack robots(敏感目录)

3、IP信息:旁站,C段,端口 nmap ,端口对应的服务 msf

4、旁注:Bing查询,VPS注意权限

5、CDN:Cloudfiare , 从子域入手:mail,postfix,i.links.cn(查看ip,从结果分析是否使用了CDN),DNS传送域漏洞 (使用nslookup)

:服务器、组件(指纹)

1、操作系统,web server(apache nginx,iis),程序语言

上一篇      下一篇    删除文章    编辑文章
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
推荐资讯
相关文章
    无相关信息
栏目更新
栏目热门