灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2169回复:0

nginx 防注入xss跨站规则

楼主#
更多 发布于:2013-01-26 16:28

使用方法:
vi /usr/local/nginx/conf/drop_sql.conf
添加以下内容

## Block SQL injections
set $block_sql_injections 0;
if ($query_string~ "union.*select.*(") {
set $block_sql_injections 1;
}
if($query_string ~ "union.*all.*select.*") {
set $block_sql_injections1;
}
if ($query_string ~ "concat.*(") {
set $block_sql_injections1;
}
if ($block_sql_injections = 1) {
return 403;
}

## Block file injections
set $block_file_injections 0;
if($query_string ~ "[a-zA-Z0-9_]=http://") {
set $block_file_injections1;
}
if ($query_string ~ "[a-zA-Z0-9_]=(..//?)+") {
set$block_file_injections 1;
}
if ($query_string ~"[a-zA-Z0-9_]=/([a-z0-9_.]//?)+") {
set $block_file_injections 1;
}
if($block_file_injections = 1) {
return 403;
}

## Block common exploits
set $block_common_exploits 0;
if($query_string ~ "(<|<).*script.*(>|>)") {
set$block_common_exploits 1;
}
if ($query_string ~"GLOBALS(=|[|%[0-9A-Z]{0,2})") {
set $block_common_exploits 1;
}
if($query_string ~ "_REQUEST(=|[|%[0-9A-Z]{0,2})") {
set $block_common_exploits1;
}
if ($query_string ~ "proc/self/environ") {
set$block_common_exploits 1;
}
if ($query_string ~"mosConfig_[a-zA-Z_]{1,21}(=|%3D)") {
set $block_common_exploits1;
}
if ($query_string ~ "base64_(en|de)code(.*)") {
set$block_common_exploits 1;
}
if ($block_common_exploits = 1) {
return403;
}

## Block spam
set $block_spam 0;
if ($query_string ~"b(ultram|unicauca|valium|viagra|vicodin|xanax|ypxaieo)b") {
set $block_spam1;
}
if ($query_string ~"b(erections|hoodia|huronriveracres|impotence|levitra|libido)b") {
set$block_spam 1;
}
if ($query_string ~"b(ambien|bluespill|cialis|cocaine|ejaculation|erectile)b") {
set $block_spam1;
}
if ($query_string ~"b(lipitor|phentermin|pro[sz]ac|sandyauer|tramadol|troyhamby)b") {
set$block_spam 1;
}
if ($block_spam = 1) {
return 403;
}

## Block user agents
set $block_user_agents 0;

# Don't disable wget if you need it to run cron jobs!
#if($http_user_agent ~ "Wget") {
# set $block_user_agents 1;
#}

# Disable Akeeba Remote Control 2.5 and earlier
if ($http_user_agent ~"Indy Library") {
set $block_user_agents 1;
}

# Common bandwidth hoggers and hacking tools.
if ($http_user_agent ~"libwww-perl") {
set $block_user_agents 1;
}
if ($http_user_agent ~"GetRight") {
set $block_user_agents 1;
}
if ($http_user_agent ~"Getweb!") {
set $block_user_agents 1;
}
if ($http_user_agent ~"Go!Zilla") {
set $block_user_agents 1;
}
if ($http_user_agent ~"Download Demon") {
set $block_user_agents 1;
}
if ($http_user_agent ~"Go-Ahead-Got-It") {
set $block_user_agents 1;
}
if ($http_user_agent ~"TurnitinBot") {
set $block_user_agents 1;
}
if ($http_user_agent ~"GrabNet") {
set $block_user_agents 1;
}

if ($block_user_agents = 1) {
return403;
}
在nginx.conf配置文件中的server段中加入
include drop_sql.conf;

重新加载nginx配置文件即可生效
/usr/local/nginx/sbin/nginx -s reload

喜欢0 评分0
游客

返回顶部