渗透测试的各个阶段

一:明确需求阶段
在开展渗透测试之前,测试人员要和客户进行面对面的沟通,以确保双方队渗透项目的理解保持一致。测试人员要理解客户测试行为背后的业务需求。哪些是他们最为关注的问题。测试人员应当与客户商讨并确认的其他信息有以下这些
1:项目范围
哪些IP地址?主机在测试范围之内?哪些不在测试范围之内?客户允许测试人员进行何种类型的测试行为?测试人员是否可以使用可能导致服务瘫痪的漏洞利用代码(即 exploit)?是否应当将评估局限于漏洞检测?客户是否明白端口扫描也可能导致服务器宕机?测试人员是否可以进行社会工程学攻击?
2:测试窗口
客户有权指定测试人员在限定工作日、限定时间之内进行测试。
3:联系信息
在发现严重问题时,测试人员应当联系哪些人?客户是否指定了24小时都可以联系的负责人?他们是否希望测试人员用加密邮件联系他们?
4:免罪金牌
确保测试人员有权对测试目标进行渗透测试。如果测试目标不归客户所有,那么务必验证第三方是否正式允许客户进行渗透测试,要获得渗透测试的书面授权。
5:支付条款
落实付款的方式、时间和金额。书面承诺对渗透测试的内容及测试中发现的问题进行保密,可获得客户的赞许。
二:信息收集阶段
测试人员要分析各种公开信息。使用端口扫描工具之类的各种工具,了解内外或外网运行的是什么系统、这些系统上安装了什么软件。
三:威胁建模阶段
测试人员利用信息收集阶段获取的信息进行威胁建模。渗透人员要以攻击者的角度出发,根据所获信息拟定各种破坏方案。举例,客户主营业务是软件开发,那么攻击者就会渗透到内网的开发系统,获取开发并测试过的软件源代码,然后贩卖给他们的竞争对手。
四:漏洞分析阶段
在这个阶段使用漏洞扫描程序,借助程序的漏洞数据库和主动检测技术,推测目标上存在哪些漏洞。但测试人员还是要进行人工分析,亲自确认扫描程序找到的全部漏洞。
五:漏洞验证阶段
测试人员往往会使用Metasploit一类的安全工具,利用exploit发现的安全漏洞,力图获取客户系统的访问权限等。
六:深度攻击阶段
测试人员会以被突破的系统为着手点收集各种信息,搜索有价值的文件,甚至在必要的时候提升自己的登陆权限等。
七:书面汇报阶段
渗透测试最终阶段的工作是书面汇报阶段。测试人员要把他们发现的各种问题整理为易于客户理解的书面文档。文档应明确哪些安全措施切实有效,指出客户需要改进的不足,描述测试人员突破防线的手段、获取到的信息,并提供修复问题的建议等内容。渗透测试的书面报告应当分为执行摘要和技术报告
1:执行摘要
执行摘要是对测试目标和调查结果的高度总结。主要面向那些负责信息安全计划的主管。
1.1:背景介绍
不仅要记录此次测试的实际目的,还要向管理人员介绍那些他们不常接触的技术术语,如漏洞,对策专业术语。
1.2:整体评估
各类问题的高度总结。应当列举测试过程中发现的问题清单,以及导致安全隐患的相应问题。
1.3:风险预测
企业安全状况的级别评定。使用高/中/低等评定语言,对客户的安全级别等级划分。还应当说明级别评定的标准。
1.4:调查总结
通过统计分析和定量分析的方法,对已有安全防范措施的实际效果进行的总结性描述。
1.5:改进建议
解决现有问题的初步建议。
1.6:战略规划
向客户建议的用于增强安全性的长短期规划。
二:技术报告
记录测试中的各种技术细节。通常由以下几个方面构成
2.1:项目简介
项目范围、联系人等信息的详细记录。
2.2:信息收集
在信息收集阶段发现的各种问题。客户会特别关注Internet上的系统入口信息。
2.3:漏洞评估
在漏洞分析阶段发现的所有技术细节。
2.4:漏洞验证及攻击方法验证
验证验证阶段的技术细节。
2.5:深度攻击
深度攻击阶段发现的问题细节。
2.6:风险及暴露程度分析
对已知风险的定量分析。测试人员应以假想攻击人员成功利用各安全漏洞为前提,评估已知问题可能产生的各类损失。
2.7:结论
整个渗透测试项目的最终总结。

你可能感兴趣的:(渗透测试)