Naxsi 配置白名单

作者&投稿:晋莘 (若有异议请与网页底部的电邮联系)
~ 在Nginx下安装和配置完Naxsi之后,为了能够使网站能够区分非法行为和合法行为,需要管理员将合法行为列入白名单。管理员可以通过分析nginx的错误日志手动添加白名单规则,或者通过密集的自动学习工具(nxapi或nxtool),这些工具将自动生成有关网站行为的白名单规则。本文主要介绍白名单规则以及如何通过分析nginx错误日志手动添加白名单规则。

naxsi核心规则文件naxsi_core.rules需要在nginx配置文件nginx.conf下的http部分导入,而naxsi白名单规则文件naxsi_whitelists.rules一般在nginx配置文件nginx.conf下的location部分导入,可放置在CheckRules语句之前。

location部分对应的配置内容如下。

为了区分Naxsi和Nginx的错误日志,可以为Naxsi设置相应的错误日志目录和文件名。在本文中,Naxsi对应的错误日志为foo.log。

如果服务器安装的是Wordpress或者ruTorrent或者dokuwiki或者drupal等,可以直接在 naxsi-rules 找到Naxsi官方制作的白名单。如果都没有找到适合的白名单,就只能自己去配置白名单了。

白名单规则的语法如下所示。然后介绍语法中的重要组成部分。

这部分指的是哪些拦截规则会进入白名单。以下举例进行说明。

wl:0 : 把所有拦截规则加入白名单
wl:42 : 把ID为42的拦截规则加入白名单
wl:42,41,43 : 把ID为42, 41 和 43的拦截规则加入白名单
wl:-42 : 把所有拦截规则加入白名单,除了ID为42的拦截规则

这部分指的是本条白名单的生效区域。区域有如下组成部分。

以下对静态的白名单规则进行举例说明。

已知拦截规则1000是过滤包含select|union|update|delete|insert|table|from|ascii|hex|unhex之类SQL关键字的规则。

在本子规则中完全禁用拦截规则1000。因为没有指定区域,所以全部加入白名单。

在全部GET参数名为foo的值中禁用拦截规则1000 (即不用1000规则检查GET中参数名为foo中的值)。所以, http://127.0.0.1/?foo=select * from a 不会被过滤。

在URL为/bar的GET请求中参数名为foo的值中禁用拦截规则1000。所以, http://127.0.0.1/bar?foo=select * from a 不会被过滤。

在URL为/bar的GET请求中的参数禁用拦截规则1000。所以, http://127.0.0.1/bar?my=select * from a 不会被过滤。 http://127.0.0.1/bar?from=weibo 也不会被过滤。

在全部GET请求中对所有参数名(只是名,不包含参数值)中禁用拦截规则1000。所以, http://127.0.0.1?from=weibo 不会被过滤。但是, http://127.0.0.1?foo=select 会被过滤(因为select属于参数值,不在白名单范围内)。

在URL为/bar的全部GET请求中对所有参数名(只是名,不包含参数值)中禁用拦截规则1000。所以, http://127.0.0.1/bar?from=weibo 不会被过滤。但是, http://127.0.0.1/bar?foo=select 会被过滤(因为select属于参数值,不在白名单范围内)。

在全部请求中对符合^/upload/(. ).(. )$正则规则的URL禁用全部拦截规则。所以, http://127.0.0.1/upload/select.db 不会被过滤 (原本会触发1000拦截规则)。

以下对含正则表达式的白名单规则进行举例说明。

在全部GET参数名含有meh的值中禁用拦截规则1000 (即不用1000规则检查GET中参数名含有meh中的值)。所以, http://127.0.0.1/?smehe=select * from a 不会被过滤。

在全部GET参数名以meh开始的值中禁用拦截规则1000 (即不用1000规则检查GET中参数名以meh开始的值)。所以, http://127.0.0.1/?mehe=select * from a 不会被过滤。

在全部GET参数名格式为“meh_数字”的值中禁用拦截规则1000 (即不用1000规则检查GET中参数名格式为“meh_数字”的值)。所以, http://127.0.0.1/?meh_12=select * from a 不会被过滤。

在URL以/foo开始的GET请求中的参数禁用拦截规则1000。所以, http://127.0.0.1/foo1?my=select * from a 不会被过滤。 http://127.0.0.1/foo2?from=weibo 也不会被过滤。

在URL以/foo开始的GET请求中的以数字开始命名的参数禁用拦截规则1000。所以, http://127.0.0.1/foo1?2my=select * from a 不会被过滤。 http://127.0.0.1/foo2?1from=weibo 也不会被过滤。

以下对RAW_BODY的白名单规则进行举例说明。以RAW_BODY为目标的白名单规则的编写方式与任何其他BODY规则相同。

已知拦截规则4241是即便在学习模式下也要过滤RAW_BODT中包含字符串RANDOMTHINGS的规则。
在本子规则中,在URL为/的BODY中的内容禁用拦截规则4241,意味着该目录下的任意BODY内容都不会被过滤。

以下对FILE_EXT的白名单规则进行举例说明。

在本子规则中,在URL为/index.html的文件上传部分禁用拦截规则1337,意味着可在该目录下上传任意文件。

以下对JSON的白名单规则进行举例说明。

JSON可被当作BODY, 以变量的形式表示文本内容。在本子规则中,对POST的参数lol禁用拦截规则1302,即以下JSON内容可以被通过。

以下为访问 http://yourwebsiteaddress/?foo=select * from a的错误日志记录。

从zone0=ARGS可看出被过滤的区域是ARGS,从id0=1000可看出拦截规则的id是1000,从var_name0=foo可看出被过滤的变量为foo。因此可以编写如下白名单规则。

1. Naxsi Wiki
2. NGINX的WAF模块-Naxsi 配置白名单
3. whitelists-bnf
4. matchzones-bnf
5. whitelists-examples


天津市19446049911: nginx 跨域请求怎么设置白名单
关胡博来: 添加如下location: location / { add_header Access-Control-Allow-Origin *; } 会在响应头中添加Access-Control-Allow-Origin字段以允许跨域

天津市19446049911: IIS如何设置白名单 -
关胡博来: 要限制IP访问吗? 1、打开IIS 2、选中站点,右键“属性” 3、点击“目录安全性”选项卡 4、选择“ip地址和域名限制” 5、默认情况选择“拒绝访问” 6、添加允许访问的IP地址

天津市19446049911: 无线wifi设置成白名单了怎么办? -
关胡博来: TPLINK路由器白名单设置方法: 1.系统连接wifi.2.打开电脑浏览器,输入路由器背后铭牌的网关ip地址(一般是192.168.1.1),进入网关配置界面.3.进入DHCP客户端界面,查看主机名.记录许可的设备主机名及其MAC地址.4.进入路由器安全设置界面,点击MAC地址过滤,有几种模式可供选择.仅允许模式:只允许指定MAC地址设备联网. 仅禁止模式:只禁止指定MAC地址设备联网. 禁用模式:禁用MAC地址过滤. 白名单功能:选择仅允许,输入许可的MAC地址并标明注释即可使允许的设备访问.

天津市19446049911: 如何在路由器中设置白名单? -
关胡博来: 进入你的路由器里面设置 在IE浏览器中输入192.168.1.1进入 输入账户和密码 具体的 看你路由器的说明书

天津市19446049911: 苹果怎么设置白名单 -
关胡博来: 设置步骤如下: 1.打开设置应用; 2.下滑找到并点击“勿扰模式”; 3.打开“勿扰模式”,还可以往下,根据个人需求进行时间的设定; 4.设定好往下滑,在允许一下来电设置个人想要的名单组,默认“个人收藏”组,如果不想周末被打扰,可以关闭“重复来电”; 5.回到最开始,打开“拨号”; 6.点击左下角的“个人收藏”; 7.点击左上角的“+”; 8.默认进入通讯录,选择想要加入白名单的人,点击,根据个人选择是呼叫还是信息; 9.白名单添加成功.

天津市19446049911: 如何设置应用白名单 -
关胡博来: 手机自启动管理,请你按照以下方式操作:1、ColorOS 3.0版本,进入手机管家--权限隐私--自启动管理进行操作即可;2、ColorOS 2.0及以上版本:手机安全中心--权限隐私或权限管理--自启动管理;3、ColorOS 1.0版本:手机的设置--安全服务--个人信息与安全--自启动管理;非ColorOS版本:可在设置--个人及安全--自启动管理,查看支持与否.注:部分机型不支持自启动管理设置,可以通过下载第三方软件如金山手机卫士管家等使用该功能

天津市19446049911: 手机的“白名单设置”是什么? -
关胡博来: 简单来说,白名单加入信任的手机号之后,该手机打电话过来、发短信过来就不会受到限制,即使短暂通话也不会有提示加入黑名单与否.

天津市19446049911: 努比亚x怎么设置白名单 -
关胡博来: 请尝试在牛盾--手机加速--开机加速--自启动管理--开启输入法和nubia电工,其他的全部关闭,然后在手机的界面长按Home键长按X图标,进入服务白名单,系统默认开启项不要动,否则可能出现异常,把QQ、微信打开(这样清理后台后可以接收到信息),把其它第三方关掉即可,经常长按Home键点击X图标,清理后台程序,在使用手机的浏览器或者是相机退出之后,请长按手机的HOME键,将其清理试一下,并且将手机的所有的软件升级到最新的版本.

天津市19446049911: 磊科路由器怎么设置白名单 -
关胡博来: 192.168.1.1进了路由器以后 输入用户名guest 密码 guest 左上角有个什么设置向导 点一下 下一步 有个 PPPOE的上网方式 再点下一步 输入 你自己的宽带帐号和密码就可以了

天津市19446049911: 什么是白名单,如何设置 -
关胡博来: 白名单的概念与“黑名单”相对应.例如:在电脑系统里,有很多软件都应用到了黑白名单规则,操作系统、防火墙、杀毒软件、邮件系统、应用软件等,凡是涉及到控制方面几乎都应用了黑白名单规则.黑名单启用后,被列入到黑名单的用户(或IP地址、IP包、邮件、病毒等)不能通过.如果设立了白名单,则在白名单中的用户(或IP地址、IP包、邮件等)会优先通过,不会被当成垃圾邮件拒收,安全性和快捷性都大大提高.将其含义扩展一步,那么凡有黑名单功能的应用,就会有白名单功能与其对应. 白名单就是可允许有权限的用户,如果是黑名单说明是被禁止的用户. 这个你是在网站设置还是路由器设置还是啥的!

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网