nginx+nasxi打造WAF

l908012008 2018-07-02 04:26:51
什么是Naxsi?
Naxsi是一个开放源代码、高效、低维护规则的Nginx Web应用防火墙模块,Naxsi的主要目标是帮助人们加固Web应用程序,以抵御SQL注入、跨站脚本、跨域伪造请求、本地和远程文件等包含的漏洞。

wl:ID (White List ID)
哪些拦截规则会进入白名单. 正确的语法是 :

wl:0 : 把所有拦截规则加入白名单
wl:42 : 把ID为42的拦截规则加入白名单
wl:42,41,43 : 把ID为42, 41 和 43的拦截规则加入白名单
wl:-42 : 把所有拦截规则加入白名单,除了ID为42的拦截规则
mz: (Match Zones)
指定的区域会生效本条白名单:

ARGS: GET的整个参数,如: foo=bar&in=%20
$ARGS_VAR: GET参数的参数名, 如 foo=bar&in=%20中的 foo和in
$ARGS_VAR_X: 正则匹配的GET参数的参数名
HEADERS: 整个HTTP协议头
$HEADERS_VAR: HTTP协议头的名字
$HEADERS_VAR_X: 正则匹配的HTTP协议头的名字
BODY: POST的整个参数内容
$BODY_VAR: POST参数的参数名
$BODY_VAR_X: 正则匹配的POST参数的参数名
URL: URL(?前的)
$URL_X: 正则匹配的URL(?前的)
FILE_EXT: 文件名 (POST上传文件时上传的文件名)

使用自定义规则,添加所有MainRule id规则,将GET请求参数id加入白名单,规则如下:
BasicRule wl:0 "mz:$ARGS_VAR:id";
...全文
225 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

10,606

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 其他
社区管理员
  • 其他
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧