script window判断f5_F5社区好文推荐:内生安全-NGINX WAF(modsecurity)测试

004ed2136e06e17fc75524c66404ef64.gif

d724d3fcb05359d59e45ca58b4010b92.png

闫海波

F5安全事业部首席安全顾问

参考:

1.UDF实验环境

2.https://www.freebuf.com/sectool/211354.html

ModSecurity是一个开源的跨平台Web应用程序防火墙(WAF)引擎,用于Apache,IIS和Nginx,由Trustwave的SpiderLabs开发。作为WAF产品,ModSecurity专门关注HTTP流量,当发出HTTP请求时,ModSecurity检查请求的所有部分,如果请求是恶意的,它会被阻止和记录。

优势:

  • 完美兼容nginx,是nginx官方推荐的WAF
  • 支持OWASP规则
  • 3.0版本比老版本更新更快,更加稳定,并且得到了nginx、Inc和Trustwave等团队的积极支持
  • 免费

ModSecurity的功能:

SQL Injection (SQLi):阻止SQL注入

Cross Site Scripting (XSS):阻止跨站脚本攻击

Local File Inclusion (LFI):阻止利用本地文件包含漏洞进行攻击

Remote File Inclusione(RFI):阻止利用远程文件包含漏洞进行攻击

Remote Code Execution (RCE):阻止利用远程命令执行漏洞进行攻击

PHP Code Injectiod:阻止PHP代码注入

HTTP Protocol Violations:阻止违反HTTP协议的恶意访问

HTTPoxy:阻止利用远程代理感染漏洞进行攻击

Shellshock:阻止利用Shellshock漏洞进行攻击

Session Fixation:阻止利用Session会话ID不变的漏洞进行攻击

Scanner Detection:阻止黑客扫描网站

Metadata/Error Leakages:阻止源代码/错误信息泄露

Project Honey Pot Blacklist:蜜罐项目黑名单

GeoIP Country Blocking:根据判断IP地址归属地来进行IP阻断

劣势:

  1. 不支持检查响应体的规则,如果配置中包含这些规则,则会被忽略,nginx的的sub_filter指令可以用来检查状语从句:重写响应数据,OWASP中相关规则是95X。
  2. 不支持OWASP核心规则集DDoS规则REQUEST-912-DOS- PROTECTION.conf,nginx本身支持配置DDoS限制
  3. 不支持在审计日志中包含请求和响应主体

基础环境:

ModSecurity 3.1

DVWA

DVWA漏洞测试

1、Command Injection

输入:www.google.com; cat /etc/passwd

6be124aae144c00a711550707225b7a4.png

成功执行

1f66b08d50378b2636f6358426139853.png

2、SQL Injection

输入:%' or 1='1

c1b87f42732d05133b737643126afe59.png

成功执行

f7b4993d4e9c871991a85df6911e43a8.png

3、XSS Injection

输入:<script>alert(“test”)</script>

13073362c5506ea53a331d3a6cad497b.png

成功执行

44da8db19e6fdbd8f83f13090722f05c.png

下载并启用modsecurity

下载解压core ruleset:

cd /etc/nginx/modsec/
sudo wget https://github.com/SpiderLabs/owasp-modsecurity-crs/archive/v3.1.0.tar.gz
sudo tar zxvf v3.1.0.tar.gz

启用modsecurity

sudo vi /etc/nginx/modsec/modsecurity.conf

将“off”改为“on”

b185a02823e91e7a49249135ad7db31e.png

sudo vim /etc/nginx/conf.d/default.conf

35fe5064c5aced2c932ed95923cc85ae.png

设置modsecurity使用OWASP CRS

cd /etc/nginx/modsec/owasp-modsecurity-crs-3.1.0
sudo cp crs-setup.conf.example crs-setup.conf
sudo vim /etc/nginx/modsec/main.conf

f7314e2429fb8038b903357a710863a0.png

一定要重新加载nginx:

sudo nginx -s reload

验证防护效果

61f0c8047c0531fc0fe5f8066403ab19.png

31825513f73b04f751f84f7c8445cea3.png

0a7a7e701e5b87c5671e32fbb379a7ce.png

查看防护日志

tail -1 /var/log/nginx/error.log

22eb675c2ee3626655fd948993245810.png

cat /var/log/modsec_audit.log

7fc1f63530745cdfaf6372dbd2e177b8.png

1bd634e3bac72dd5fad6e5c96a4e1304.png

The audit log stepsthrough each phase of modsecurity’s evaluation

  • A Audit log header (mandatory)
  • B Request headers
  • C Request body
  • D Reserved
  • E Response body
  • F Response headers
  • G Reserved
  • H Audit log trailer, which contains additional data
  • I Compact request body alternative (to part C), which excludes files
  • J Information on uploaded files
  • K Contains a list of all rules that matched for the transaction
  • Z Final boundary (mandatory)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值