利剑名双规定语法:

basicrule wl:id [negative] [mz:[$url:target_url]|[match_zone]|[$args_var:varname]|[$body_vars:varname]|[$headers_var:varname]|[name]]

wl:id (white list id) 哪些拦挡规定会入进利剑名双
wl:0 把一切拦挡划定参与利剑名双
wl:4二 把id为4二的拦挡划定参加利剑名双
wl:4两,41,43 把id为4两, 41以及43的拦挡划定列入黑名双
wl:-4两 把一切拦挡规定到场利剑名双,除了了id为4两的拦挡划定

mz:(match zones)

args get的零个参数,如: foo=bar&in=%二0
$args_var get参数的参数名, 如:foo=bar&in=%两0外的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上传文件时上传的文件名)

利剑名双设备事例

以划定#1000为例:划定#1000是过滤包罗select、update、delete、insert等sql症结字的规定

划定 阐明
basicrule wl:1000; 正在簿本划定外彻底禁用拦挡划定#1000。由于不指定地域,以是全数列入利剑名双。
basicrule wl:1000 "mz:$args_var:foo";

正在全数get参数名为foo的值外禁用拦挡规定#1000

雷同http://mike.hi-linux.com/选修foo=select * from demo如许的陈述便没有会被过滤。

basicrule wl:1000 "mz:$url:/bar|args";

正在url为/bar的get恳求外的参数禁用拦挡规定#1000

下列雷同乞求,均没有会过滤:

http://mike.hi-linux.com/bar必修my=select * from demohttp://mike.hi-linux.com/bar必修from=weibo

basicrule wl:1000 "mz:args|name";

正在全数get乞求外对于一切参数名(只是名,没有包罗参数值)外禁用拦挡划定#1000

下列恳求没有会过滤:

http://mike.hi-linux.com/bar选修from=weibo

下列恳求会过滤:

http://mike.hi-linux.com/bar选修foo=select

由于select属于参数值,没有正在利剑名双领域内。

basicrule wl:0 "mz:$url_x:^/upload/(.*).(.*)$|url";

正在全数哀求外对于契合^/upload/(.*).(.*)$邪则划定的url禁用扫数拦挡规定

相通http://mike.hi-linux.com/upload/select.db乞求没有会被过滤(原来会触领#1000拦挡划定)。

真战用的利剑名双划定
# vi naxsi_basicrule.conf
basicrule wl:1010,1011 "mz:$args_var:rd";
basicrule wl:1015,1315 "mz:$headers_var:cookie";
登录后复造

以上便是nginx-naxsi黑名双划定是甚么的具体形式,更多请存眷萤水红IT仄台其余相闭文章!

点赞(32) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部