Sqlmap联合Nginx实现“地毯式”检测网站SQL注入漏洞


发布人:admin分类:网络安全浏览量:19发布时间:2017-12-12

以安全防御方的角度来看,防御的广度比深度更具优先级,这也是信息安全中木桶原理的体现。
Sqlmap是一个开源的SQL注入漏洞检测工具,Nginx是高性能的WEB服务器。今天我们将二者结合起来,对网站的SQL注入漏洞实现“地毯式”的检测!

思路
sqlmap可以批量导入http代理的日志,根据日志中的每一个请求进行分析和探测。(可参考sqlmap帮助文档)
所以,我们可以配置nginx记录下网站所有的http请求信息,格式化处理后提供给sqlmap,这样sqlmap就能根据网站的每一个请求进行检测,从而实现最全面的检测效果。

操作步骤

实验环境:centos 6.5 + nginx + sqlmap

1. 配置nginx,记录请求信息
nginx无法记录完整的请求信息(反正我没找到),只能指定相应的字段进行记录,不过够了,关键信息基本都有了。
这里有个细节可以注意下,sqlmap接受的log日志是有一定格式的,所以要拼凑出这个格式。
修改nginx配置文件中的log_format的内容如下:

log_format main '=====================================================


=====================================================
$request
Cookie: $http_cookie
User-Agent: $http_user_agent
Content-Type: $content_type
Content-Length: $content_length
Host: $host

$request_body
=====================================================


';   #到这结束,注意上面的空行

记录的字段分别为:请求行、cookie、agent、content-type、content-length、host、post参数。

这样记录下来post请求参数也能检测了;实际上如果是get请求的话只记录请求行就行了。

配置好后记得重启nginx。

现在日志应该是这个样子了:


2.格式化日志
在linux下换行符是LF,而HTTP协议中要求的换行符为CRLF,所以要替换换行符为CRLF;

方法1

终端执行

perl -p -i -e 's/\n/\r\n/' access.log

方法2

使用vi编辑器编辑access.log 在命令模式下输入:set ff=dos 然后保存退出

3.根据日志,执行检测
终端执行:  

sqlmap.py  -l  access.log  --batch  -smart

可以看到针对日志中的请求记录进行检测了:

总结

这个方案的优势在于:可以利用网站的普通访问来帮助我们对网站来进行注入检测,达到“人人为我”的效果,这也算是一种互联网思维吧。

个人拙作,欢迎大家讨论。

[本文由作者占个位撰写并投稿,]


被黑站点统计 - 文章版权1、本主题所有言论和图片纯属会员个人意见,与本文章立场无关
2、本站所有主题由该文章作者发表,该文章作者与被黑站点统计享有文章相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该文章作者和被黑站点统计的同意
4、文章作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、被黑站点统计管理员有权不事先通知发贴者而删除本文

免责声明

本站主要通过网络搜集国内被黑网站信息,统计分析数据,为部署安全型网络提供强有力的依据.本站所有工作人员均不参与黑站,挂马或赢利性行为,所有数据均为网民提供,提交者不一定是黑站人,所有提交采取不记名,先提交先审核的方式,如有任何疑问请及时与我们联系.

admin  的文章


微信公众号

微信公众号


Copyright © 2012-2022被黑网站统计系统All Rights Reserved
页面总访问量:21204933(PV) 页面执行时间:56.037(MS)
  • xml
  • 网站地图