WAF防护率检测工具
一、产品概述
(1)功能概述
- WAF 防护率检测工具是一个可执行的脚本程序,支持 win10 和 linux 两个环境,可一键运行,自动输出检测结果。
目前已支持 TP、TN、FP、FN、检出率、误报率、准确率、各攻击类型的检测率等指标。
(2)测试方法
- 将恶意样本(HTTP 请求)批量重放至目标域名,通过响应状态码判断该请求的检测结果(拦截、放行),结合样本标
识(正常样本/异常样本)判断每个样本对应的识别结果,并输出最终各个测试指标的统计结果。
(3)实现逻辑
-
1.分别发起正常访问请求与攻击请求,获取不同的响应状态码(normalCode、blockCode)
normalCode == blockCode,判断未使用 WAF,程序结束;
normalCode != blockCode,使用 blockCode 作为拦截判定依据;
-
2.遍历/testcases 目录下的所有样本文件,获取样本标识、攻击类型、原始 HTTP 报文;
-
3.读取并对 HTTP 报文做如下修改后,发送至目标站点;
-
修改 host 头部值为指定的目标域名,发送至目标站点;
修改 Connection 头部值,固定为“Connection:close”;
删除 Cookie、Authorization 头部;
-
4.获取响应头信息,根据返回的响应状态码+样本标识判断 WAF 识别结果;
-
5.输出各指标的统计输出以及输出各攻击类型的统计数据;
二.适用场景
(1)云 WAF 产品选型,可利用该工具进行选型对比分析;
(2)已使用云 WAF 产品,可利用该工具验证云 WAF 产品的防护能力。
三、核心优势
(1)海量样本
- 网宿提供丰富的测试样本,超过3万例样本数,可覆盖多行业类型客户场景;
(2)详尽用例
- 检测的攻击类型和样本来源范围广:囊括了常见攻击类型靶场攻击用例、常见 WAF 绕过方法测试用例、高危
CVE 漏洞、组件漏洞及其他攻击测试用例;
(3)全面报告
- 提供详细的安全攻击报告,并且包含各攻击类型的检测结果及分析结果,有效了解业务的安全水位。
四、使用说明
(1)运行环境
(2)执行命令
-
./waf_test_tool_v2 --target http://wswaf.hexx.vip --thread 50
(3)注意事项
- 因为检测工具包含一些攻击代码,故工具包运行时需关闭防火墙或病毒软件,否则会提示文件包含病毒或潜在的垃圾软件,导致工具无法正常运行。
(4)传入参数
-
–target 待扫描的域名,示例:http(s):
//domain.com(:80)
–thread 并发请求数限制,默认 30。注:该参数指定 50 时,测试平均 QPS 约为 90,实际情况受机器性能
/网络带宽等因素影响
五、指标说明
(1)测试指标
- TP:True Positive,表示正确识别异常样本,正确拦截攻击请求;
- TN:True Negative,表示正式识别正常样本,正确放行正常请求;
- FP:False Positive,表示正常样本错被识别为异常,即“误报”;
- FN:False Negative,表示异常样本错被识别为正常,即“漏报”;
- 检出率:=TP/(TP+FN),正确拦截的攻击请求数/恶意样本总数;
- 误报率:=FP/(TP+FP),错误拦截的正常请求数/识别为异常的样本总数;
- 准确率:=(TP+TN)/(TP+TN+FP+FN),正确识别样本数/总样本数;
- 异常样本中各个攻击类型的检出率:正确拦截的攻击请求数/攻击类型恶意样本总数;
(2)测试样本
- 总样本数:3 万+
- 正常样本:来源于浏览器访问模拟正常业务请求;
- 异常样本:来源于常见攻击类型靶场攻击用例+常见 WAF 绕过方法测试用例+近 1 年的高危
CVE 漏洞 POC 用例+近 3 年常见 OA 组件漏洞 POC 用例+其他攻击测试用例
- 异常样本涉及的攻击类型包括:SQL 注入攻击、XSS 跨站攻击、Webshell 后门上传、文件包
含攻击、XML 实体注入攻击、命令注入攻击、高危文件非法访问、dsnlog 域名检测、web 扫
描器检测、URL 编码攻击、Base64 编码攻击、Unicode 编码攻击、超长攻击载荷绕过、常见
OA 组件漏洞攻击、CVE 漏洞利用攻击、Shiro 反序列漏洞攻击
六、下载试用