我正在尝试将 zap 任务自动化到我的构建过程中。这是我所做的:
- 运行 zap
- 运行硒测试
- 运行 zap 蜘蛛
- 运行 zap activeScan
- 保存 zap 会话
- 运行 zap 警报检查并报告它
- 结束电击
这是我的 ant build.xml 的目标:
<SpiderURL zapAddress="${zapaddr}" zapPort="${zapport}" url="${targetHost}" debug="true"/>
<sleep seconds="5"/>
<ActiveScanSite zapAddress="${zapaddr}" zapPort="${zapport}" url="${targetHost}" debug="true"/>
<sleep seconds="5"/>
<tstamp>
<format property="timestamp" pattern="MM-dd-yyyy HH-mm-ss"/>
</tstamp>
<SaveZAPSession zapAddress="${zapaddr}" zapPort="${zapport}" name="${user.dir}/test ${timestamp}" debug="true"/>
<record name="Report.txt" action="start" append="true" />
<alertCheckTask zapAddress="${zapaddr}" zapPort="${zapport}" debug="false">
<ignoreAlert risk="Low" />
<ignoreAlert risk="Medium" />
<requirealert alert="Cross Site Scripting (Reflected)" />
</alertCheckTask>
<record name="Report.txt" action="stop" />
问题是:主动扫描没有完成,它被下一个任务(保存zap会话)打断,这意味着报告的警报也没有覆盖所有的主动扫描结果。