一、渗透测试定义
渗透测试就是一种通过模拟恶意攻击者的技术与方法,挫败目标系统安全控制措施,取得发昂问控制权,并发现具备业务影响后果安全隐患的一种安全测试与评估方式。
二、渗透测试分类
黑盒测试:设计为模拟一个对客户组织一无所知的攻击者所进行的渗透攻击。也称为外部测试。采用这种方式时,渗透测试团队将从一个远程网络位置来评估目标网络基础设施,并没有任何目标网络内部拓扑等相关信息,他们完全模拟真是网络环境中的外部攻击者,采用流行的攻击技术与工具,有组织有步骤地对目标组织进行逐步的渗透与入侵,揭示目标网络中一些已知或未知的安全漏洞,并评估这些漏洞能否被利用获取控制权或造成业务资产的损失。黑盒测试是比较费时费力的,同时需要渗透测试者具备交稿的技术能力。在安全业界的渗透测试者眼中,黑盒测试通常是更受推崇的,因为它能更逼真地模拟一次真正的攻击过程。
白盒测试:渗透测试者在拥有客户组织所有只是的情况下所进行的渗透测试。也称为内部测试。进行白盒测试的团队将可以了解到关于目标环境的所有内部与底层知识,因此这可以让渗透测试者以最小的代价发现和验证系统中最严重的安全漏洞。如果实施到位,白盒测试能够比黑盒测试消除更多的目标基础设施环境中的安全漏洞与弱点,从而给客户组织带来更大的价值。白盒测试的实施流程与黑盒测试类似,不同之处在于无须进行目标定位与情报搜集;此外,白盒测试能够更加方便地在一次常规的开发与部署计划周期中集成,使得能够在早期就消除掉一些可能存在的安全问题,从而避免被入侵者发现和利用。白盒测试中发现和解决安全漏洞所花费的实践和代价要比黑盒测试少许多。而白盒测试最大的问题在于无法有效地测试客户组织的应急响应程序,也无法判断出他们的安全防护计划对检测特定攻击的效率。如果时间有限或是特定的渗透测试环节(如情报搜集)并不在范围之内,那么白盒测试可能是最好的选项。
灰盒测试:以上两种渗透测试基本类型的组合可以提供对目标系统更加深入和全面的安全审查,这就是灰盒测试,组合之后的好处就是能够同时发挥两种基本类型渗透测试方法的各自优势。灰盒测试需要渗透测试者能够根据对目标系统所掌握的有限知识与信息,来选择评估整体安全性的最佳途径。在采用灰盒测试方法的外部渗透场景中,渗透测试者也类似地需要从外部逐步渗透进入目标网络,但他所拥有的目标网络底层拓扑与架构将有助于更好地决策攻击途径与方法,从而达到更好的渗透测试效果。`
三、渗透测试方法与流程
几个比较流行的开源渗透测试方法体系标准:
OSSTMM ISECOM安全与公开方法学研究所 安全测试方法学开源手册
NIST SP 800—42 NIST美国国家标准与技术研究院网络安全测试指南
OWASP Top Ten OWASP十大Web应用安全威胁项目
WASC—TC Web安全威胁分类标准
PTES 渗透测试执行标准
渗透测试流程:
1、前期交互阶段:渗透测试团队与客户组织进行交互讨论,最重要的是确定渗透测试的范围、目标、限制条件以及服务合同细节。
该阶段通常涉及收集客户需求、准备测试计划、定义测试范围与边界、定义业务目标、项目管理与规划等活动。
2、情报搜集阶段:在目标范围确定之后,将进入情报搜集阶段,渗透测试团队可以利用各种信息来源与搜集方法,尝试获取更多关于目标组织网络拓扑、系统配置与安全防御措施的信息。
渗透测试者可以使用的情报搜集方法包括公开来源信息查询、Google Hacking、社会工程学、网络踩点、扫描探测、被动监听、服务查点等。而对目标系统的情报探查能力是渗透测试者一项非常重要的技能。
3、威胁建模阶段:在搜集到充分的情报信息之后,团队成员对获取的信息进行威胁建模与攻击规划,确定出最可行的攻击通道。
4、漏洞分析阶段:在确定出最可行的攻击通道之后,需要考虑如何取得目标系统的访问控制权。
综合分析前几个阶段获取的情报信息,特别是安全漏洞扫描结果、服务查点信息等,通过搜索可获取的渗透代码资源,找出可以实施渗透攻击的攻击点,并在实验环境中进行验证。针对攻击通道上的一些关键系统与服务进行安全漏洞探测与挖掘,找出可被利用的未知安全漏洞,并开发出渗透代码,从而打开攻击通道上的关键路径。
5、渗透攻击阶段:利用所找出的目标系统安全漏洞,来真正入侵系统当中,获得访问控制权。
可以利用公开渠道获取的渗透代码,但一般实际应用中,还需要从分地考虑目标系统特性来定制渗透攻击,并需要挫败目标网络与系统中实施的安全防御措施,才能成功达成渗透目的。在黑盒测试中,还需要考虑对目标系统检测机制的逃逸,避免造成目标组织安全响应团队的警觉和发现。
6、后渗透阶段:更具目标尊之的业务经营模式、保护资产形式与安全防御计划的不同特点,自主设计出攻击目标,识别关键基础设施,并寻找客户组织最具价值和尝试安全保护的信息和资产,最终达成能够对客户组织造成最重要业务影响的攻击途径。
7、报告阶段:最终向客户组织提交,取得认可并成功获得合同付款的一份渗透测试报告。包括获取的关键情报信息、探测和发掘出的系统安全漏洞、成功渗透攻击的过程,以及造成业务影响后果的攻击途径,帮助分析安全防御中的薄弱环节、存在的问题,以及修补和升级技术方案。
阅读(590) | 评论(0) | 转发(0) |