第4个秘诀:根据风险高低,进行测试。

  进行哪种类型的测试,应取决于数据/应用程序的价值。对于低风险资产,定期的漏洞扫描无异于经济高效地利用资源。中等风险的资产可能需要结合漏洞扫描和手动的漏洞检查。至于高风险资产,应进行渗透测试,寻找可利用的漏洞。

  比如说,一所大型大学的安全主管说,他们已开始进行渗透测试,以满足PCI DSS的要求。一旦这项计划落实到位,成了用于测试潜在攻击者潜入大学系统的能力的典范。该大学将数据分为公共数据、内部数据、敏感数据和高度敏感数据这几类。

  他说:“对于高度敏感的信息,我们进行了渗透测试,遵守几乎与PCI一样的准则。我们在此基础上深入了一步,根据一些具体的标准和一些主观判断,看看要对系统进行哪种级别的渗透测试??如果需要渗透测试的话。”

  比如说,对于风险比较低的信息,该大学将测试随机抽选的系统及/或应用程序,具体要看时间和预算的紧张程度。由于校园网络上有几千个设备,即便对它们都进行低级扫描也是行不通的。

  这名安全主管说:“你可以测试有明确所有者和系统管理员的业务系统。但是如果你有3000台Wii连接到网络上,你不应该扫描那些设备、弄清楚它们分别属于谁。”

  第5个秘诀:了解攻击者的概况。

  你的渗透测试人员在想法和行为上都要与真正的攻击者无异。但攻击者不属于好人这一类。要了解潜在攻击者的概况。

  外部攻击者对贵公司可能所知甚少,可能知道一些IP地址。但他们可能是前任员工,或者效力于贵公司的合作伙伴或服务提供商,所以对你网络的内部情况相当了解。内部攻击者可能是拥有访问和授权特权的系统管理员或数据库管理员,知道关键数据在什么地方。

  了解攻击者概况时要考虑的一个因素是动机。攻击者觊觎的是可以变成现金的信用卡号码和个人身份信息?还是可以卖给竞争对手或获得商业优势的知识产权?攻击者想破坏你的Web应用程序,可能出于政治目的或竞争目的。他可能是怒气冲冲的前任员工,想“对贵公司进行报复”。

  应该与业务负责人合作,帮助了解这些概况,打探哪些类型的潜在攻击者是他们感到担心的。

  概况可以缩小渗透测试的关注范围;测试内容会不一样,具体取决于每一种攻击者概况。

  Core Security公司的Solino说:“我们基本了解了某个攻击者会对目标搞什么破坏,对此我们分得很清楚。针对每一种概况,我们获得渗透测试的结果,然后再了解另一种概况。”

  第6个秘诀:掌握的信息越多越好。

  无论是实际攻击,还是渗透测试,收集信息都是整个过程的一个部分,旨在查找诸设备、操作系统、应用程序和数据库等。你对某个目标及与它连接的系统了解越多,潜入进去的可能性越大。

  每一步都可能会得到有价值的信息,以便你攻击另一个资产,直到终进入你瞄准的数据库和文件共享区等目标。获得的信息让你可以缩小搜索可利用漏洞的范围。通常可以使用自动化的扫描和绘图工具,来进行这种侦察;但你也可以使用社会工程学方法,比如在电话一头冒充技术支持人员或承包商,收集有价值的信息。

  Verizon公司的Khawaja说:“我们越来越多地开始采用社会工程学方法。这实际上是一种侦察手段(在客户许可的情况下进行),让我们得以在环境中找到可以帮助我们潜入进去的每个薄弱环节。”

  多阶段的渗透测试通常是重复进行侦察、评估漏洞和利用漏洞,每一步都为你提供更深入地渗透到网络的信息。