Apache-2.4
如何阻止對 Apache 上包含子字元串的 url 的所有 HEAD 請求?
我管理的一台伺服器被一個編碼不佳的 AWS 建構的機器人所困擾,該機器人不斷地切換 IP,並且似乎陷入了遞歸編碼循環。我能看到的唯一一致的指紋是每個請求只是一個
HEAD
請求,每個請求似乎都重新編碼了前一個請求。於是http://someurl.com/?foo=%25bar
就..%2525..
變成了..%252525..
……%2525252525252525...x1000
這是我看到的請求類型的範例:
HEAD http://example.com/?foo=%25bar HEAD http://example.com/?foo=%2525bar HEAD http://example.com/?foo=%252525bar HEAD http://example.com/?foo=%25252525bar HEAD http://example.com/?foo=%2525252525bar HEAD http://example.com/?foo=%2525252525...25bar (x1000)
到目前為止,我一直在使用 Cloudflare 防火牆來阻止每個 IP,但它們會不斷切換 IP。
我怎樣才能簡單地阻止所有包含子字元串(比如
%25252525
)的 HEAD 請求?我在跑步
Apache/2.4.6 (CentOS)
。
在你的 .htaccess 中使用 mod_rewrite 怎麼樣?
<IfModule mod_rewrite.c> RewriteCond %{REQUEST_METHOD} HEAD RewriteCond %{QUERY_STRING} 25252525 RewriteRule .* - [F,L] </IfModule>
這將阻止所有帶有包含“25252525”的查詢字元串的 HEAD 請求。顯然,您可以根據需要對其進行更多調整!