Trong tut này mình sẽ hướng dẫn các bạn cách chống Xss Exploits, Sql Injections, File Injections trên nginx
- Mở file vhost và thêm các đoạn sau vào trong phần server {}
1. Block SQL injections
SQL injections là Một cách mà hacker tận dụng lỗi trên trang web của bạn để hack vào cơ sở dữ liệu , rất nguy hiểm , để chặn ta dùng rules sau để block
Mã:
## 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_injections 1; } if ($query_string ~ "concat.*\(") { set $block_sql_injections 1; } if ($block_sql_injections = 1) { return 403; }
Một dạng tấn công injections nhưng ở đây là vào file chứ không phải mysql , rules để block
Mã:
## Block file injections set $block_file_injections 0; if ($query_string ~ "[a-zA-Z0-9_]=http://") { set $block_file_injections 1; } 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; }
Exploits hay xss
Mã:
## Block common exploits XSS set $block_common_exploits 0; if ($query_string ~ "(<|%3C).*script.*(>|%3E)") { set $block_common_exploits 1; } if ($query_string ~ "(<|%3C).*.*(>|%3E)") { set $block_common_exploits 1; } if ($query_string ~ "(<|%3C).*.*(|%3E)") { 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_exploits 1; } if ($query_string ~ "proc/self/environ") { set $block_common_exploits 1; } if ($query_string ~ "mosConfig_[a-zA-Z_]{1,21}(=|\%3D)") { set $block_common_exploits 1; } if ($query_string ~ "base64_(en|de)code\(.*\)") { set $block_common_exploits 1; } if ($block_common_exploits = 1) { return 403; }
Đăng nhận xét Blogger Facebook