TA的每日心情 | 无聊 4 天前 |
---|
签到天数: 1050 天 连续签到: 1 天 [LV.10]测试总司令
|
近年来,随着国际形势和网络空间环境日趋复杂,各方面对网络安全重视程度日益提升,网络安全也已纳入了国家战略。在此背景下,系统的安全测试与防护就显得越来越重要,项目组在进行基于owasp zap工具进行安全扫描过程中,对工具的使用及扫描流程进行了深入分析,对常规扫描方式进行了优化。
zap提供了强大的路径爬虫及漏洞扫描功能,常规方式下,可以通过配置代理来录制前台页面,点击系统页面功能后抓取网站路径,再通过“爬行”、“强制浏览目录”等功能进行路径的分析与扩展,最后通过“主动扫描”功能进行漏洞扫描,生成漏扫报告。但这种方式抓取到的网站路径并不能保证是系统的全量路径,也就可能会导致扫描结果不详尽。
我们的优化思路是利用工具脚本将系统全量路径整理出来,并批量导入到zap工具当中,再进行漏扫分析,这种方式得到的扫描结果就更全面。下面描述常见的.net框架(C#语言)和springboot框架(java)语言解决方案。
1..net框架
.net框架下,项目工程的物理路径即可直接转换为网站路径,通过编写python脚本,遍历工程内的目录文件,可直接转换为网站路径,基于该路径,zap可以在扫描过程中遍历系统全量路径及方法。
图1-1:路径转换python代码
图1-2:zap批量导入url功能
2.springboot框架
Springboot框架安全性更优,只对外提供API服务接口,无法直接访问物理路径,人工整理系统API接口繁琐且容易出纰漏。在此条件下,可以利用swagger插件将工程的全量API接口导出(json格式),再批量导入到zap工具中。
图2-1 swagger接口脚本下载位置
图2-2:zap批量导入api接口功能
导入后的接口并不包含登陆信息,可以在zap设置界面统一添加http头进行token等验证信息的配置,以便工具进行后续的自动扫描。
|
|