白帽渗透测试的36条军规

简介: 本文讲的是白帽渗透测试的36条军规,几年前,360出过一个黑掉北京公交一卡通系统的事,当时我应邀给一些渗透测试人员做过一个关于渗透测试行业自律和职业规范的报告。

本文讲的是 白帽渗透测试的36条军规,几年前,360出过一个黑掉北京公交一卡通系统的事,当时我应邀给一些渗透测试人员做过一个关于渗透测试行业自律和职业规范的报告。其中提到了ISECOM的Open Source Security Test Methodology Manual 中提到的职业规范Rule of Engagement。这个职业规范的目的是规范渗透测试人员的行为,以避免白帽子陷入法律纠纷。
image

这些年,网络安全服务市场日益发展,出现了不少白帽团队和漏洞平台。但是白帽子在提高技术的同时,法律和职业规范方面却并没有跟上,出现了不少违法的案例。今天看来,OSSTMM的Rule of Engagement还是具有很好的指导意义的。

OSSTMM的Rule of Engagement分为9个部分共36条。这些条款应该作为网络安全和渗透测试服务的自律准则。遵守这些原则,可以使得安全测试人员避免法律风险以及合同纠纷。

销售和营销

1) 不要用恐吓的方式进行网络安全渗透服务的营销;

2) 不要提供哪种“渗透不成功不收费”的服务;

3) 禁止以销售产品和渗透服务为目的的渗透比赛;

4) 在未经授权的情况下严禁对任何系统进行渗透测试;

5) 也不要在渗透测试的宣传中提及以前采用过你的渗透测试的客户的名字即使在客户同意的情况下也不要提。 这样是对客户和渗透团队自身的保护;

6) 对客户提供可信的安全咨询建议, 即使这样的建议可能会丢掉合同。

漏洞评估

1) 禁止在没有书面同意的情况下验证漏洞;

2) 在相应的安全措施到位前, 严禁对那些安全性极差,极不稳定的进行漏洞验证。

合同及谈判

1) 不管有没有签保密协议, 渗透测试人员都对客户的机密信息以及安全测试结果具有保密的责任;

2) 安全测试人员在每一个测试中都承担有限责任。 包括恶意的和非恶意的错误;

3) 合同必须明确的指明安全测试的局限以及风险;

4) 在远程测试的情况下, 合同中必须包括有远程测试人员的电话以及原始IP地址;

5) 合同中必须包括应急情况下的联系人及电话;

6) 合同中必须明确对可恢复错误, 拒绝服务, 过程测试, 社交工程等测试手段的许可;

7) 合同必须明确对将来合同修改和工作范围修改的流程。

工作范围

1) 在合同明确工作范围之前不要进行漏洞验证;

2) 工作范围中需要明确指明安全测试的局限。

提供测试计划

1) 测试计划必须包括天数和人时信息;

2) 测试计划必须包括测试需要的时间。

对客户的要求

1) 在测试期间不要有大的网络调整;

2) 为避免因为渗透测试而采取临时性提供安全防护标准的情况。 应该要求客户知通知重要人员。 应该由客户自行决定哪些人员应该通知而哪些人员不必要通知;

3) 测试中如果需要用户权限, 客户应该提供两个不同的用户账号, 这些账号应该与需要测试的用户账号一样, 而不是特殊的访客账号或者安全账号;

4) 在测试需要用户权限时, 测试人员应该首先以黑盒方式, 在无用户权限情况下测试, 然后再用客户提供的用户账号进行测试。

测试

1) 测试人员应该了解所采用的测试工具, 明确测试工具提供方, 了解测试工具如何使用。 必须对测试工具严格的实验环境下测试后才能进行测试工作;

2) DoS的测试必须得到客户的明确许可。 OSSTMM通常不要求对系统进行DoS等具有破坏性的测试,而是采用审阅的方式评估系统对此类攻击的防范水平;

3) 社交工程以及过程测试只能够对那些未经训练的人员, 采用统计抽样的方式进行测试;

4) 社交工程和过程测试应该严格针对合同范围内界定的人员, 不应该包括客户, 合作伙伴, 供应商人员;

5) 一旦发现高风险漏洞, 必须立刻向客户报告并提供解决方案;

6) 严禁通过互联网进行DDoS攻击测试;

7) 严禁以超过系统目标承受能力的Flooding Test;

8) 任何情况下的测试范围变化, 攻击源的变化, 重要的发现等都需要立即通知客户。 应该每两周提供客户一份进度报告。

报告撰写

1) 对发现的安全问题必须在报告中提供解决方案;

2) 所有未知的情况必须在报告中表明“未知”;

3) 报告应该包括所有的安全状况, 而不仅仅是安全漏洞;

4) 报告必须按照行业标准给出定性的风险评估, 风险评估应该依据相应的公式而不是测试人员的感觉。

报告发送

1) 必须明确通知客户何时发出报告, 并且需要客户确认已收到报告;

2) 所有的与客户的通信方式必须是端到端安全的。

原文发布时间为:六月 27, 2016
本文作者:王萌
本文来自云栖社区合作伙伴安全牛,了解相关信息可以关注安全牛。
原文链接:http://www.aqniu.com/learn/17119.html

相关文章
|
安全 测试技术 网络安全
|
21天前
|
测试技术 C语言
网站压力测试工具Siege图文详解
网站压力测试工具Siege图文详解
27 0
|
2月前
|
JavaScript jenkins 测试技术
这10款性能测试工具,收藏起来,测试人的工具箱!
这10款性能测试工具,收藏起来,测试人的工具箱!
|
2月前
|
测试技术
现代软件测试中的自动化工具与挑战
传统软件测试面临着越来越复杂的系统架构和不断增长的测试需求,自动化测试工具应运而生。本文将探讨现代软件测试中自动化工具的应用和挑战,深入分析其优势与局限性,为软件测试领域的发展提供思路和启示。
|
2月前
|
测试技术 持续交付
现代软件测试中的自动化工具应用与挑战
随着信息技术的快速发展,软件行业对于质量和效率的要求日益提高,自动化测试工具在软件开发过程中扮演着至关重要的角色。本文将探讨现代软件测试中自动化工具的应用现状以及所面临的挑战,旨在帮助开发人员更好地理解并充分利用这一技术手段。
|
3天前
|
机器学习/深度学习 数据采集 人工智能
【专栏】利用AI辅助工具提高软件测试效率与准确性
【4月更文挑战第27天】本文探讨了AI在软件测试中的应用,如自动执行测试用例、识别缺陷和优化测试设计。AI辅助工具利用机器学习、自然语言处理和图像识别提高效率,但面临数据质量、模型解释性、维护更新及安全性挑战。未来,AI将更注重用户体验,提升透明度,并在保护隐私的同时,通过联邦学习等技术共享知识。AI在软件测试领域的前景广阔,但需解决现有挑战。
|
2月前
|
jenkins 测试技术 持续交付
现代软件测试中的自动化工具与挑战
随着软件开发领域的不断发展,自动化测试工具在测试过程中扮演着越来越重要的角色。本文将探讨现代软件测试中自动化工具的应用及面临的挑战,旨在帮助开发人员和测试人员更好地理解和应对自动化测试中的问题。
|
1天前
|
IDE 测试技术 持续交付
探索自动化测试工具Selenium的高效应用
【4月更文挑战第29天】 在快速迭代的软件开发过程中,高效的测试策略是确保产品质量的关键。本文将深入探讨如何利用自动化测试工具Selenium来提高软件测试的效率和准确性。通过介绍Selenium的核心功能、脚本编写技巧以及与持续集成环境的集成方法,我们旨在为读者提供一个全面的Selenium应用指南。此外,我们还将讨论常见的问题解决策略,并通过案例分析展示如何有效地运用Selenium进行复杂的Web应用测试。
|
2天前
|
Java 测试技术 数据库连接
软件测试中的自动化工具及其应用
传统的软件测试方法已经不能满足日益增长的软件开发需求,因此自动化测试工具应运而生。本文介绍了几种常用的自动化测试工具,并探讨了它们在软件测试中的应用及优势。
7 0
|
9天前
|
敏捷开发 Java 测试技术
探索自动化测试工具Selenium Grid的高效应用
【4月更文挑战第21天】 随着敏捷开发和持续集成的理念深入人心,自动化测试已成为软件开发过程中不可或缺的一环。本文将深入探讨如何利用Selenium Grid进行高效的自动化测试。通过分析其工作原理,搭建过程,以及在实际项目中的应用案例,揭示Selenium Grid在处理大规模并发测试中的潜力和优势。文章不仅提供了具体的操作步骤,还讨论了优化策略,帮助读者构建更加稳定和高效的自动化测试环境。

热门文章

最新文章