我们一直被一个BotNet砸到了。
我制定了两条规则,可以减少80%的流量,但这些请求仍在执行中。
172.69.34.192 - - [21/Nov/2019:06:03:12 -0600] "POST /wp-login.php HTTP/1.1" 200 453750 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0"
172.69.34.192 - - [21/Nov/2019:06:03:15 -0600] "GET /wp-login.php HTTP/1.1" 200 452909 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0"这个BotNet每天改变+3,000个不同的IP地址,但是总是做一个Post,然后做一个Get。流量是直接的,没有页面引用。
如何使用post的组合阻止htaccess中的这些内容,并访问wp-login.php,并且没有页面:"-"?
到目前为止,我有这些地方,以阻止80%的其他不想要的机器人。
# Stop Bots with Bogus User Agents
SetEnvIf User-Agent "^-$" bad_user
SetEnvIf User-Agent "^$" bad_user
<Files ~ "^(wp-login|xmlrpc)\.php">
order allow,deny
allow from all
Deny from env=bad_user
</Files>
# Block Specific Bots by Name
SetEnvIfNoCase User-agent (yandex|baidu|mj12bot|ahrefsbot|blexbot|dotbot|exabot|seznambot|aihitbot|spbot|mj12bot|obot|deusu|ia_archiver|metauri|flipboardproxy|flicky|pycurl|casper|cmsworldmap|diavol|purebot|comodo|feedfinder|planetwork) not-allowed
<Limit GET POST PUT>
Order Allow,Deny
Allow from all
Deny from env=not-allowed
</Limit>我要找的是阻止"-“引用的东西。也许是这样的,但我不确定这是否是正确的语法,或者我是否可以将它与上面的#Stop Bots条目结合。
SetEnvIf Referrer "^-$" bad_bot
<Files ~ "^(wp-login|xmlrpc)\.php">
order allow,deny
allow from all
Deny from env=bad_bot
</Files>发布于 2019-11-28 15:25:30
--但是我可以添加一个规则,如果它是
wp-login页面,而页面引用程序是"-",那么就阻塞。我只是不知道它的语法
您可以尝试将此规则作为您的最顶层规则(就在RewriteBase行下面):
RewriteEngine On
RewriteCond %{THE_REQUEST} /wp-login\.php [NC]
RewriteCond %{HTTP_REFERER} ^-?$
RewriteRule ^ - [F]这将返回上述两个条件下的403 (禁忌)错误。
https://stackoverflow.com/questions/58977654
复制相似问题