知识屋:更实用的电脑技术知识网站
所在位置:首页 > 网络安全 > 安全资讯

利用nginx重写规则防止SQL注入扫描

发布时间:2013-08-01 23:26:44作者:知识屋

 你正在为网站无时无刻地被人扫面而烦恼?个人网站没有企业级防火墙是不是就束手无策呢?如果你用的是nginx,那么恭喜你,nginx配置文件本来就是一个脚本程序,能帮你过滤一切你想过滤的提交内容,本人总结了一些nginx的防注入扫描规则,希望对你有用:

if ($request_uri ~* "([+|(%20)]and[+|(%20)])|([+|(%20)]or[+|(%20)])|([+|(%20)]select[+|(%20)])|([+|(%20)]exec[+|(%20)])|([+|(%20)]union[+|(%20)])") {
return 404;
}
if ($request_uri ~* "(cost()|(concat()") {
return 404;
}
if ($query_string ~ "(<|%3C).*script.*(>|%3E)") {
return 404;
}
if ($query_string ~ "GLOBALS(=|[|%[0-9A-Z]{0,2})") {
return 404;
}
if ($query_string ~ "_REQUEST(=|[|%[0-9A-Z]{0,2})") {
return 404;
}
if ($query_string ~ "proc/self/environ") {
return 404;
}
if ($query_string ~ "mosConfig_[a-zA-Z_]{1,21}(=|%3D)") {
return 404;
}
if ($query_string ~ "base64_(en|de)code(.*)") {
return 404;
}
if ($http_user_agent ~ "Python-urllib") {
return 404;
}
注意:如果你的应用是高级别的管理后台,譬如phpmyadmin,本规则将会是这些程序的部分功能不可用,因为这些程序参数里包含sql语句哦。

程序里return 404你也可以修改成自己的响应模式或响应页面,吓唬一下试探者吧~

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜