渗透测试过程环节:
1.前期交互阶段(Pre-Engagement Interaction),渗透测试团队与客户组织进行交互讨论,确定渗透范围、目标、限制条件以及服务合同细节。
2.情报收集阶段(Information Gathering),渗透测试团队利用各种信息来源与搜集技术方法,尝试获取更多目标组织网络拓扑、系统配置、与安全防御措施的信息,其包括:公开来源信息查询、Google Hacking、社会工程学、网络踩点、扫描探测、被动监听、服务查点等。
3.威胁建模阶段(Threat Modeling),通过之前的情报收集信息,集思广益,确定攻击方向。
4.漏洞分析阶段(Vulnerablily Analysis),确定攻击方式后,需要考虑如何取得系统的访问控制权。在此阶段,攻击者需要综合分析前面3个阶段获取的信息,特别是安全扫面漏洞结果、服务查点信息等。
5.渗透攻击阶段(Exploitation),渗透测试团队通过之前获取的目标系统安全漏洞,避开网络和系统中实施的安全防范措施达到渗透目的。在黑盒测试中,渗透测试者还需要考虑对目标系统检测机制的逃逸,从而避免造成目标组织响应团队的警觉和发现。
6.后渗透攻击阶段(Post Exploitation),是整个渗透测试过程中最能够体现渗透测试团队创造力和技术能力的环节。在此环节,需要渗透团队根据目标组织的业务经营模式、保护资产形式与安全防御计划的不同特点,自主设计攻击目标,识别关键基础设施,并寻找客户组织最具价值和尝试安全保护的信息和资产,最终达到能够对客户组织造成最重要业务影响的攻击途径。
7.报告阶段(Reporting),向客户提供一份测试报告,包括渗透测试团队获取的关键情报信息、探测和发掘出的系统安全漏洞、成功渗透攻击的过程,以及造成业务影响后果的攻击途径,同时还要站在防御者的角度上,帮助他们分析安全体系中的薄弱环节、存在问题,以及修补和升级方案。
安全漏洞生命周期:
1.安全漏洞研究与挖掘:由高水平的黑客与渗透测试师开展,主要利用源代码审核(白盒测试)、逆向工程(灰盒测试)、Fuzz测试(黑盒测试)等方法,挖掘目标系统中存有的可被利用的安全漏洞。
2.渗透代码开发和测试:在安全漏洞挖掘的同时,黑客们会开发概念验证性的渗透攻击代码(POC),用于验证找到的安全漏洞是否确实存在,并确认其是否可被利用。
3.安全漏洞和渗透代码在封闭团队中流传,发现安全漏洞并给出渗透代码后,白帽子通知厂商进行修补,在厂商修补后再进行公布。黑帽子和灰帽子一般在封闭的小团队里面进行秘密共享,以充分的利用这些安全漏洞和渗透代码所带来的攻击价值。
4.安全漏洞和渗透代码开始扩散,由于各种原因,安全漏洞和渗透代码被披露出来,并在安全社区中快速扩散。
5.恶意程序出现并传播,黑帽子们在掌握安全漏洞和渗透代码基础上,进一步开发更易使用、更具自动化传播能力的恶意程序,并通过黑客社区社会组织结构和互联网进行传播。
6.渗透代码/恶意程序大规模传播并危害互联网,厂商发布补丁程序和安全警告进一步让整个黑客社区了解出现新的安全漏洞和相应的渗透代码、恶意程序,更多的黑帽子通过互联网获取恶意程序,对互联网危害达到巅峰。
7.渗透攻击代码/攻击工具/恶意程序逐渐消亡,在厂商补丁程序,安全公司提供检测和移除机制得到广泛应用后相应的渗透代码、恶意程序将被黑帽子逐渐抛弃,从而慢慢消亡。