Log POST Data in Nginx
2016-06-22 13:26
525 查看
先编译Nginx的echo module:
可以在github上面找到这个module的源代码
然后添加$request_body,来加上post data:
最后定义一下access日志的路径,这里是默认:
到这里基本上就可以了,此时你的access日志大小会蹭蹭蹭的往上涨,在抓一些关键数据的时候可以尝试这么做。
不过要注意密码等敏感信息的脱敏。
另类姿势:
上面我们按照了echo module,可以用它做一些好玩的事情。比如:
此时,我们curl /hello这个uri的时候,会出现:
那么我们可以这样来:
如果把一个网站根本不存在的URL设置成这个,那么当恶意攻击者扫描我们网站的时候,其扫描器未做正确超时处理的话,可能就会线程崩溃。
利用此方法,若掌握扫描器漏洞,甚至可以反向溢出攻击者。
./configure --add-module=./echo-nginx-module-0.54 make make install
可以在github上面找到这个module的源代码
然后添加$request_body,来加上post data:
log_format custom '$remote_addr - $remote_user [$time_local] ' '"$request" $status $body_bytes_sent ' '"$http_referer" "$http_user_agent" "$request_body"';
最后定义一下access日志的路径,这里是默认:
access_log /var/log/nginx/access.log custom;
到这里基本上就可以了,此时你的access日志大小会蹭蹭蹭的往上涨,在抓一些关键数据的时候可以尝试这么做。
不过要注意密码等敏感信息的脱敏。
另类姿势:
上面我们按照了echo module,可以用它做一些好玩的事情。比如:
我们定义: location /hello { echo -n "hello, "; echo "world!"; }
此时,我们curl /hello这个uri的时候,会出现:
$ curl 'http://localhost/echo' hello, world
那么我们可以这样来:
location /hello { echo_sleep 100000; echo_sleep 100000; echo_sleep 100000; }
如果把一个网站根本不存在的URL设置成这个,那么当恶意攻击者扫描我们网站的时候,其扫描器未做正确超时处理的话,可能就会线程崩溃。
利用此方法,若掌握扫描器漏洞,甚至可以反向溢出攻击者。
相关文章推荐
- nginx: [error] invalid PID number “” in “/usr/local/var/run/nginx/nginx.pid”
- nginx配置详解
- 编译安装nginx
- Apache与Nginx的优缺点比较
- 四:深入Nginx之事件和连接 (之二)
- nginx优化缓冲缓存
- nginx和php的基本配置说明
- nginx proxy优化
- Nginx启动停止命令
- Nginx端口的修改
- centos安装nginx
- nginx 安装及代理配置。
- nginx视频服务器
- 解决nginx的An error occurred. The page you are looking for is temporarily unavailable错误办法
- 认识nginx
- nginx 配置整理(初级版)
- 实用的前端工具(nginx/fis3/git/grunt/less等)
- nginx环境搭建(windows)
- .Net Core Linux centos7行—安装nginx,运行静态网站
- nginx built-in variables (nginx 内置的变量)