- 概述.... 3
1.1 背景.... 3 - 安全渗透测试流程(黑盒)细则说明.... 4
2.1 部门角色协同配合职责说明.... 5
2.1.1 安全渗透测试人员.... 5
2.1.2 产品线测试负责人.... 5
2.1.3 产品线产品负责人.... 6
2.1.4 产品线研发负责人.... 6
2.2 其他角色职责解释说明.... 6
1. 概述
渗透测试的目的在于模拟恶意黑客的攻击方法对网站进行全面检测和评估,以期发现和挖掘系统中存在的安全漏洞,然后输出渗透测试报告,并提交给产品线负责人。产品线负责人根据渗透人员提供的渗透测试报告,可以清晰知晓系统中存在的安全隐患和问题。为了使安全缺陷问题能够得到更高效的响应处理机制,让产品线各部门能够更高效默契的协同工作,所以制定整理关于安全渗透测试流程(黑盒)的说明,供产品线各部门执行使用。
1.1 背景
安全渗透测试可以帮助企业的安全防护从被动转换成主动,为企业安全问题防患于未然,避免了由安全风险带来的巨大损失。当存在下面这些风险时,安全渗透测试显得尤为必要:
1、企业及网站存在机密资料外泄、用户资料外泄的担忧;
2、开发完毕的新系统平台需要上线;
3、开发过程中系统需要进行局部安全测试;
4、业务系统存在交易业务逻辑问题(如金融类系统);
所以为了提升XX安全机制的成熟度,提前部署好安全防御措施,保证系统的每个环节在未来都能经得起恶意黑客的挑战,减少不必要的经济损失,提高用户体验度,巩固并增加用户对XX平台的信任和支持。故而从流程上制定一些标准,以及各部门协同配合的输入输出点进行分解说明,制定此规范以作为统一标准。
适用范围
Ø 本文档适用于质量保障中心/测试/产品/研发以及相关干系人参考;
2. 安全渗透测试流程(黑盒)细则说明
2.1 部门角色协同配合职责说明
2.1.1 安全渗透测试人员
根据实际需要向产品线测试负责人提交产品线安全渗透测试立项申请;
当立项申请通过后,进入产品信息收集阶段,安全渗透测试人员需要尽量多的收集关于目标web应用的各种信息,比如:脚本语言的类型、服务器的类型、目录的结构、使用的开源软件、数据库类型、所有链接页面、用到的框架等;
根据收集到的信息确定渗透测试范围(如:IP、域名、内外网、整站或部分模块)、测试规则(比如能够渗透到什么程度,是发现漏洞为止还是继续利用漏洞产生破坏性后果、渗透测试时间上的限制、能否上传、能否提权等)、测试需求(web应用的漏洞(如新上线产品/程序)、业务逻辑漏洞(针对业务逻辑上的安全漏洞)、人员权限管理漏洞(针对人员、权限等)),确定测试方案后准备相应的测试工具;
使用自动化漏洞扫描工具对渗透测试目标进行初步扫描(如:AppScan(IBM出品的一款商业用途的自动化安全扫描工具,主要针对web应用方向,目前安全团队使用的是2015年旧版破解版)、AWVS(由全球著名的安全漏洞厂商Acunetix出品的一款商业用途的自动化安全扫描工具,主要针对web应用方向,目前安全团队使用的是2015年旧版破解版)、owasp-zap(一款开源免费的自动化漏洞扫描工具)等);
由于自动化漏洞扫描工具存在一定的误报情况,所以需要对自动化漏洞扫描工具提供的扫描结果进行手工验证,以保证漏洞点的真实性、有效性。
由于自动化漏洞扫描工具存在一定的漏报情况,所以需要对页面中有可能存在OWASP Top 10(十大安全漏洞)的点进行手工检测,尽可能多的发现漏洞,以保证漏洞点的全面性;
对网站中可能存在的薄弱点进行漏洞挖掘,如逻辑漏洞(如暴力枚举、支付漏洞、越权、业务逻辑漏洞等)、组合漏洞及所有有可能给公司带来损失的漏洞;
根据以上的分析验证结果,编写安全渗透测试报告,并提出对应的安全建议。
参加由测试负责人组织的安全渗透测试报告会,向测试负责人、产品负责人、研发负责人解释并参与讨论安全缺陷;
验证安全漏洞是否已经被修复,如果已被修复则通知测试负责人发送安全渗透测试流程结束通告;
2.1.2 产品线测试负责人
当产品线测试负责人接收到安全渗透测试立项申请时,应帮助安全渗透测试人员协调,搭建安全渗透测试环境。预估安全渗透测试环境可用时间,并保障在安全渗透测试阶段测试环境的正常使用(如导入测试数据、测试环境恢复、保障测试环境网络通畅等)。如果没有安全渗透测试环境可用,应及时告知安全渗透测试人员立项不通过,并预估测试环境可用时间;
当产品线测试负责人接收到由安全渗透测试人员发出的安全渗透测试报告时,应组织产品线安全渗透测试报告会议,通知产品负责人及研发负责人参加会议;
产品线测试负责人应跟踪并推动研发测修复安全缺陷,并主动与安全渗透测试人员沟通安全缺陷复测结果,当安全缺陷全部被修复时,应以邮件形式通知所有有关人员安全渗透测试流程结束;
2.1.3 产品线产品负责人
- 参加产品线安全渗透测试报告会议,参与安全缺陷讨论,并以产品体验、用户体验的角度提出安全缺陷修复建议,同时应积极主动的协助测试负责人推动安全缺陷修正工作;
2.1.4 产品线研发负责人
- 参加产品线安全渗透测试报告会议,参与安全缺陷讨论,并以修复难度、开发成本的角度提出安全缺陷修复建议, 同时应积极主动的进行安全缺陷修正工作;
2.2 其他角色职责解释说明
产品线测试人员、研发人员需积极主动的配合安全渗透测试工作;
相关研发人员对安全缺陷进行修复,修改相应的代码。
产品线测试人员对缺陷涉及的功能进行回归测试,以保证研发人员修改后,不会对产品功能产生影响。