通过设置 URL 入口、登陆方式和测试策略,AppScan 可以快速完成 Web 应用扫描的配置,从而开始漏洞检测。其实,除了上述几种设置,我们在图 7 左侧还可以发现更为完善的测试配置项,比如对参数和 Cookie 的设置,对扫描访问的 URL 深度和广度进行配置,对需要填充的表单如何填写等等。
图 8. 进行扫描中与发现的部分安全问题
AppScan 的扫描分为二部分,首先是进行探索,将发现的 URL 进行记录;其次进入实际的测试步骤,将利用之前我们设定的测试策略进行渗透测试。下图是 AltoroMutual 应用经过 AppScan 黑盒测试发现的部分安全问题。在 AppScan 主窗口左上方显示的 AltoroMutual 被扫描出的网站 URL 结构图,每个 URL 上发现的安全漏洞被标注在该 URL 后。左下方的仪表板显示了安全问题的汇总,由于我们设定只针对中高级别的安全问题进行显示,所以 Low Level、Info Level 的问题数量为 0。右上方将扫描出安全问题的种类和相应的 URL 一一罗列出来,而在其下方是每一个安全问题的详细描述、修复建议和问题复现。
图 9. AppScan 扫描完成后的主窗体
(点击查看大图)
一般来讲,基于黑盒的渗透测试具有较高的测试准确率,但是我们依旧需要对扫描出的安全问题进行分析和甄别,从而给出合理的安全级别和修复建议。在本例中,我们具体分析一下 AltoroMutual 应用中存在的跨站脚本攻击(XSS)问题。
点击存在 XSS 问题的 URL“http://localhost:8080/altoromutual/sendFeedback”中“name”,可以看到产生这个 XSS 问题的详细信息,我们通过查看“请求 / 响应”来对该漏洞进行复现和判断其严重程度。点击“请求 / 响应”的标签后,我们发现 AppScan 发送了如下的内容给 AltoroMutual。利用将“1234>%22%27>”插入到 cfile=comments.txt&name 后,实施 XSS 攻击。
图 10. AppScan 向服务器端发送的带有跨站脚本攻击的数据
通过点击“在浏览器中显示”的方式,我们可以得以在 AppScan 内嵌浏览器中将这个跨站脚本攻击问题复现。
图 11. 在 AppScan 内置浏览器中进行 XSS 问题复现
通过上面的扫描示例我们不难看出,基于黑盒的渗透测试确是有较为高的准确率。在软件开发生命周期中,渗透测试可以帮助测试人员、QA 人员在 FVT、UAT 等阶段发现软件安全问题。
文章来源于领测软件测试网 https://www.ltesting.net/