我们的网站不断受到 IP 地址解析为中国的机器人的攻击,这些机器人试图利用我们的系统。虽然他们的攻击没有成功,但他们不断消耗我们的服务器资源。攻击示例如下:
2010-07-23 15:56:22 58.223.238.6 48681 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.6.4/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:23 58.223.238.6 48713 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.6.5/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:23 58.223.238.6 48738 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.6.6/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:24 58.223.238.6 48761 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.6.7/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:24 58.223.238.6 48784 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.6.8/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:24 58.223.238.6 48806 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.6.9/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:25 58.223.238.6 48834 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.7.0-beta1/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:25 58.223.238.6 48857 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.7.0-pl1/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:25 58.223.238.6 48886 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.7.0-pl2/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:27 58.223.238.6 48915 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.7.0-rc1/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:27 58.223.238.6 48997 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.7.0/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:28 58.223.238.6 49023 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.7.1/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:28 58.223.238.6 49044 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.7.2/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:28 58.223.238.6 49072 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.7.3/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:29 58.223.238.6 49094 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.7.4/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:29 58.223.238.6 49122 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.7.5/scripts/setup.php 400 - Hostname -
2010-07-23 15:56:30 58.223.238.6 49152 xxx.xx.xx.xx 80 HTTP/1.1 GET /phpMyAdmin-2.7.6/scripts/setup.php 400 - Hostname -
他们每时每刻都在攻击我们的服务器,每秒多次,寻找漏洞。IP 地址总是不同的,因此在防火墙上添加规则只能作为短期解决方案,防止这些攻击再次发生。
我正在寻找一种可靠的方法来在网站运行时识别这些攻击者。是否有一种编程方法可以在识别 IP 地址后向 IIS 添加规则,或者有更好的方法来阻止这些请求?
任何有关识别和阻止这些 IP 地址的想法或解决方案都将受到热烈欢迎。谢谢!
答案1
请不要将整个国家列入黑名单,甚至是较大的地址块。
考虑这些行动的含义。 即使阻止一个地址也可能阻止大量用户连接到您的网站。主机的合法所有者完全有可能不知道他们的盒子已经被0wned
。
您确实显示了“24/7”的流量......但我想请您评估一下您的资源消耗是否真的很严重(我从该日志片段中看到每秒最多有三次点击)。
请调查您的选择。确保您的服务器确实得到了强化,自行进行漏洞评估并审查您的站点代码。查看每个源的速率限制器,Web 应用程序防火墙等。保护您的网站,保存您的资源,并采取符合您的业务需求的措施。
我说这些是因为我的服务曾经经常被中国防火墙。如果你的网站最终表现足够好,他们甚至可能会阻止他们的用户访问你!
答案2
我封锁了整个国家。中国人只从我的 3000 多个网站购买过一件商品,但他们却占用了我 18% 的带宽。在这 18% 中,约有 60% 是寻找可利用脚本的机器人。
- 更新 - 多年后我关闭了对中国的屏蔽。我被来自百度的几个关键词的真正非机器人流量淹没。一周内点击量达到约 40 万次后,我创建了一个简体中文的特殊页面,才卖出了一笔。不值得占用带宽。我打算重新屏蔽他们。
您还可以设置一个简单的 htaccess 规则,以便每次他们查找以 phpmyadmin 开头的任何内容(不分大小写)时,都将其重定向到 FBI 的中文版本。
答案3
您可以尝试查看呼噜这是一个入侵检测系统(在 wikipedia 上搜索,因为我无法链接多个 URL)。检查您的防火墙是否已经安装了某些东西。IDS 会扫描传入流量,如果发现漏洞,它可以在防火墙上阻止它。
除此之外,您实际上无能为力。我不会费心通知滥用 IP 地址的联系人,因为除非您看到来自单个 IP 地址的大量攻击,否则不太可能产生任何结果。唯一的其他建议是保持您的服务器和您使用的任何第三方脚本保持最新,这样您就不会成为这些攻击的受害者。
答案4
可能是时候研究一个好的硬件解决方案了。带有 IPS 模块的 Cisco ASA 几乎是你能得到的最可靠的解决方案。