虽然渗透测试不是最近的发明,但从什么时候是最有效和最必要的角度来看,渗透测试是一种许多团队并不了解的工具。对一些企业来说,渗透测试是一种应急响应机制(事后),对另一些企业来说,渗透测试是一种预防机制(事前)。
实际上,渗透测试既不是保护手段,也不是预防手段,是一种用于评估系统安全状况的工具,是确保正确构建防御系统的一种方法。
谁需要渗透测试?
首先,依据相关法律,许多公司必须经常评估其安全措施的充分性。另外还有一些国际标准建议定期进行渗透测试。(注:根据《网络安全法》,企业必须建立健全网络安全体系、制定网络安全管理制度,采取技术措施、安全防范措施、安全事件应急预案等措施,保护网络安全。同时,企业要对从业人员进行安全教育,保护用户个人信息和重要数据,不得泄露、篡改或损毁。如果企业存在网络安全事故,应当及时采取补救措施,并及时通报用户、有关部门,并承担相应的法律责任。)
没有被具体法律覆盖的企业,可以根据是否对数据进行操作、数据丢失对业务的影响程度等角度判定是否进行渗透测试。
如果企业的生产线几乎无法接入互联网,或者处理的数据很容易恢复,丢失不会造成严重的损失,那么这种情况下就没有必要进行渗透测试了。切记,渗透测试并不便宜。
与此同时,处理医疗数据的小型初创公司必须测试其安全级别,因为医疗数据是一种高度机密类型的信息(注:无论是国外的HIPPA、国内的数据安全法等对健康医疗数据进行了专门说明)。
漏洞扫描器是否可以取代渗透测试?
漏洞扫描是渗透测试的开始(注:或者说一部分)。通过对系统扫描来检查是否存在可以被入侵者所利用的攻击点,扫描器会生成一份报告,例如,已完成扫描一百台主机,其中两台存在潜在漏洞,需要对其执行某些操作。仅此而已。
扫描器不进行渗透测试。它只负责收集统计数据。它报告漏洞的存在并生成一份列出潜在威胁的报告。渗透测试人员完成扫描后,开始展开进一步的攻击。扫描器是必不可少的工具,但它只是开始。它不会取代渗透测试。
值得注意的是,基于人工智能的扫描器已经问世。他们扫描并根据结果启动预先计划的攻击动作。根据结果,决定下一步、如何进行攻击。目前市场上此类产品还很少,但潜力巨大。
信息安全审计与漏洞赏金
审核是检查信息系统是否符合特定标准的动作。例如,审计员可以检查是否存在防火墙或密码策略。这些检查与渗透测试有很大不同,因为后者评估的是实际的安全级别,而不是潜在的安全级别。(注:国内企业级漏洞赏金行为使用SRC进行,国外更爱使用赏金猎的称呼)
公司参与漏洞赏金计划就像做渗透测试一样。公司发布漏洞赏金计划,并向入侵其系统或系统具体模块的任何人提供奖励。
如今,漏洞赏金的使用非常有限。首先,很多人总想参与其中,但基础设施存在无法承受大量黑客涌入的风险。然后,一个不知名但经验丰富的渗透测试人员有可能发现了一个严重的漏洞,不会立即将其透露给您,而是会利用它或将其出售给某人。一些公司只允许选定的专家们参与他们的漏洞赏金计划(注:企业防御能力和大量渗透测试人员自身风险的矛盾、重要漏洞被滥用、利用的矛盾)。
另一个关键区别是:虽然漏洞赏金通常侧重于识别特定软件中的漏洞,但渗透测试是一项更广泛的服务,旨在发现企业基础设施中的漏洞(注:漏洞雇佣兵通常采用无差别攻击方式,可能扩大攻击面引起关联性风险)。
渗透测试的特点
通常与渗透测试提供商建立称为服务级别协议 (SLA) 的合同。测试范围必须详细说明。您应该指定将测试哪些系统、测试时间以及测试方式。禁止进行超出约定范围的测试。
如果您同意测试特定的 IP 范围,则您应该只处理该范围。即使测试显示该公司有更多的 IP 地址,即使它在另一个国家的数据中心并且那里也存在漏洞,这些 IP 也不应该被触及。
有许多示例表明,即使是超出约定范围的简单端口扫描也被视为(恶意)事件。调查展开后,肇事者受到了惩罚。
在渗透测试期间,有时您可能会需要评估系统处理高流量的能力。如果您在数据中心托管服务,则必须与该中心协调并告知他们您进行此类测试的意图。该中心随后将对其设备进行必要的调整。亚马逊、谷歌和其他云提供商在他们的网站上指定您可以随意测试您的系统,只是要注意严格把控测试范围。(注:渗透一般需要明确渗透测试的目标、范围、攻击方式方法、渗透所使用工具以及风险,哪怕这样,也可能对同一云区域、IDC的其他信息系统造成影响)
需要什么样的渗透测试方法和标准?
有多种标准适用于渗透测试领域。比如说用于测试 Web 应用程序的标准。此外,还有一个被广泛认可的国际标准,称为PTES,它概述了进行渗透测试的协议。它涵盖了渗透测试的各个阶段,例如威胁建模、后渗透等。
渗透测试提供商通常会与客户讨论用于进行测试的方法。有白盒、灰盒和黑盒渗透测试。“黑盒”是指客户不透露有关其基础架构的任何信息;“白盒”—指渗透测试人员可以访问源代码,也可以审核源代码。最后,当客户提供有关基础设施的一些信息时,“灰盒”介于两者之间。
通常采用“黑盒”测试,因为黑客通常是不了解公司并属于试图获得未经授权访问的外部用户(注:国内SRC大多属于黑盒测试)。
渗透测试持续时间和频率
渗透测试平均持续一个月,有时甚至更长。如果持续几个月,就已经属于红队了。红队更像是一种网络攻防演习。服务提供商事先讨论演习规则,然后尝试通过所有可用手段入侵系统。如果将其与渗透测试进行比较,则红队不太常见。更常见的是,它是特定系统的渗透测试。例如,您启动了一个新的 Web 门户并想要对其进行测试。
就频率而言,建议在每次基础架构发生变更后(注:至少是重要变更,例如配置操作、大版本升级、重要补丁、系统架构等)进行渗透测试。
这些变更发生的频率取决于您的业务流程。通常,全面的渗透测试每六个月或每年一次(至少)——但敏捷企业如果以更快的速度部署,应该考虑运行持续的渗透测试。其余时间,每次微小的配置更改后,可以使用扫描器。成本更低而且也可以发现一些常规问题。
检查最多的是什么?
大多数客户想要测试网站、应用程序、门户以及web上可用的所有内容。有些人想检查备份的安全性。内部渗透测试的需求明显减少。这可能是由于行业特定因素造成的。渗透测试人员通常与具有既定安全实践、训练有素的员工以及独立处理内部威胁的能力的大公司合作。这些公司拥有必要的技术资源来解决数据泄露问题。然而,他们通常无法理解企业之外发生的事情,所以聘请渗透测试人员来评估这些外部漏洞。
您可以使用渗透报告来培训您自己的信息安全专业人员吗?
企业把渗透测试作为一个学习某些内容和确认是否做对了所有事情的机会,而安全人员把渗透测试作为一次必须通过的考核,否则会受到惩罚,所以,在矛盾之下,会出现人为干预报告内容的情况,当然,很大程度上取决于公司信息安全流程的成熟程度以及公司员工的职业素养。
渗透测试报告在学习方面并没有提供很好的机会。在渗透测试期间,会突出显示具体问题,但客户的专家可以根据报告中的内容得出结论。如果他们这样做了,那么他们就会学到一些东西。否则,什么都不会改变。他们可以修复当前的漏洞,但新的漏洞肯定还会出现。
云安全联盟大中华区发布CCPTP(Certifified Cloud Penetration Test Professional)云渗透测试认证专家认证与培训项目(点击跳转课程详情介绍),旨在提供针对云计算渗透测试所需的专业实操技能,弥补云渗透测试认知的差距和技能人才培养的空白,提升专业人员能力及提供认证证书,为云计算产业发展提供渗透人才队伍保障。
如何选择渗透测试公司?
最重要的考虑因素是公司及其专家的声誉。渗透测试人员是有权访问您的基础设施的个人。确保在攻击成功的情况下,他们不会向第三方泄露任何数据至关重要。当然,这种关系受详细合同的约束,该合同涉及安排的所有方面,但声誉是一个关键考虑因素。
结论
渗透测试是组织评估其安全状况的重要工具,但了解其目的和局限性至关重要。虽然漏洞扫描是渗透测试过程的重要组成部分,但它不能取代全面的渗透测试。公司应与其渗透测试公司建立详细的服务级别协议,并确保他们遵守商定的测试范围。此外,渗透测试的频率应基于业务流程和基础架构的变更情况。选择渗透测试公司和个人时,声誉应该是首要考虑因素。总体而言,渗透测试为企业提供了必要的见解,以改进其安全实践并预防潜在的网络威胁。
文章来源:CSA官网 https://cloudsecurityalliance.org/blog/2023/06/16/pentesting-the-missing-piece-in-your-security-puzzle/
翻译: 张坤,云安全联盟大中华区研究专家、某医疗企业首席信息安全官,擅长安全技术实践、数据安全、攻防对抗、企业安全研发、安全体系化能力建设和隐私合规等安全领域。
审校:余晓光,云安全联盟大中华区物联网安全工作组联席组长、华为IoT安全实验室负责人。 |