it-swarm.cn

如何在我的网站上停止机器人攻击?

我有一个网站(用wordpress构建),目前正在进行机器人攻击(我能说的最好)。正在反复请求文件,并且引用者(几乎每次都)turkyoutube.org/player/player.swf。被请求的文件深入我的主题文件中,并且后面跟着“?v=”和一个长字符串(即r.php?v=Wby02FlVyms&title=izlesen.tk_Wby02FlVyms&toke)。

我已经尝试为该引用设置一个.htaccess规则,这似乎有效,除了现在我的404页面被反复加载,仍然使用大量带宽。有没有办法创建一个不需要带宽使用的.htaccess规则?

我也试过创建一个robots.txt文件,但攻击似乎忽略了这一点。

#This is the relevant part of the .htaccess file:
RewriteCond %{HTTP_REFERER} turkyoutube\.org [NC]
RewriteRule .* - [F]
14
Travis Northcutt

怎么样 corbomite机动

RewriteEngine on
RewriteCond %{HTTP_REFERER} ^http(s)?://(www\.)?turkyoutube.org.*$ [NC]
RewriteRule ^(.*)$ http://127.0.0.1/$1 [R=401,L]

注意,未经测试但应使用401 Not Authorized状态代码将请求从它们重定向回自身。也就是说,如果机器人甚至处理重定向(非常不可能),但它仍然会看到状态代码。 404状态代码可能更有效。任何人都应该告诉机器人它应该放弃它。

如果您扩展表达式以与主机稍微匹配,那么您在注释中发布的规则也是足够的。我使用一些接近的东西(就实际规则而言)来阻止匹配libwww-Perl的用户代理:

RewriteCond %{HTTP_USER_AGENT} libwww-Perl.*
RewriteRule .* - [F,L]
8
Tim Post

除了IP阻止之外,我还会仔细检查所请求的文件。对于开源系统来说,这是一个相当普遍的事情,例如WordPress和Joomla被利用,这是他们经常更新的原因之一。如果您忽略了一些更新,则可能有人已经渗透到您的网站。

我曾经两次遇到这种情况,一次是在一个从未完全部署过的测试网站上(但留在原地),另一次是在公司网站上,有效访问的员工“窃听”了一个phpBB用于他的家庭沟通 - 更新可以防止问题。在这两种情况下,问题都来自分析,因为在您的情况下似乎可能是真的。 Joomla攻击注入了导致用户浏览器加载软件的javascript,而后者允许黑客将文件上传到服务器,该服务器是分布式“备用”google站点的一部分,每次都引导用户进行操作。虽然这不是一个常见的黑客攻击,但请查看您的数据库用户表,以防万一。

我当然不是要引起恐慌,但是花一点时间花点时间挖掘你的网站以确切知道发生了什么事情,这绝不会让人痛苦。有时你会发现你会发现什么。

2
bpeterson76

如果攻击每次来自相同的IP号(或一小组IP号),则应阻止防火墙中的IP号。这不应该花费您的Web服务器上的任何带宽或负载。

如果你在Linux机器上托管它,你有root访问权限 本文 解释如何执行此操作。

1
Kris

我在所有服务器上使用DenyHosts [1]。 DenyHosts禁止所有在n次后无法登录的IP。您也可以发送通知。因此,您可以很好地了解登录的ips/hosts;它还具有Web更新功能和其他强大功能。但它的安装仍然非常简单。

另一种方法是禁止来自中国或其他非目标群体的国家/地区的所有IP范围/区块(例如)。这可以通过在线“黑名单”或仅使用hosts.deny文件(如DenyHosts)来完成。

[1] http://denyhosts.sourceforge.net/

0
fwaechter