如何处理和惩罚或最小化奇怪的页面请求/黑客尝试

时间:2014-05-28 20:15:29

标签: php apache http-status-code-404

如果标题不是很好,我很抱歉,我只是无法判断我的404文档日志的输出是来自绝望的黑客还是绝望的蜘蛛。我发送了一个404标题,并带有礼貌的信息。

日志可以帮助我自动记录缺失的链接以跟踪它们并修复它们。我过滤了包含可查看文档的3条路径,但我想知道是否有最佳实践,或者可能是延迟404页面加载的方法,因此我对过滤后的内容的请求减少了。

我知道我可能会在这里通过我的帽子说话,所以请告诉我延迟是否不会惩罚攻击者/垃圾邮件发送者(特别是如果我发送404标题),如果我不应该担心,或者像这一点。

知道哪些是真正的黑客攻击也很好。

我希望建议处理这样的问题,以便我尽可能减少这些建议,而不是banning IPs

我正在与PHP5共享托管Apache服务器。

示例输出:

[2014-05-27 06:03] /browserconfig.xml
[2014-05-27 07:47] /file/jh%27
[2014-05-27 13:25] /?bcsicoach
[2014-05-27 17:52] /wp-login.php
[2014-05-27 18:04] /join.php/join.php
[2014-05-27 18:04] /join.php/join_form.php
[2014-05-27 18:50] /browserconfig.xml
[2014-05-27 20:32] /apple-touch-icon-152x152-precomposed.png
[2014-05-27 20:32] /apple-touch-icon-152x152.png
[2014-05-27 20:32] /apple-touch-icon-precomposed.png
[2014-05-27 20:32] /apple-touch-icon.png
[2014-05-27 22:47] /browserconfig.xml
[2014-05-28 00:07] /apple-touch-icon-76x76-precomposed.png
[2014-05-28 00:07] /apple-touch-icon-76x76.png
[2014-05-28 00:07] /apple-touch-icon-precomposed.png
[2014-05-28 00:07] /apple-touch-icon.png
[2014-05-28 00:07] /apple-touch-icon-precomposed.png
[2014-05-28 00:07] /apple-touch-icon.png
[2014-05-28 05:59] /apple-touch-icon-152x152-precomposed.png
[2014-05-28 06:00] /apple-touch-icon-152x152.png
[2014-05-28 06:00] /apple-touch-icon-precomposed.png
[2014-05-28 06:00] /apple-touch-icon.png
[2014-05-28 06:00] /file/Service.zip
[2014-05-28 08:33] /join.php/join.php
[2014-05-28 08:33] /join.php/join_form.php
[2014-05-28 12:31] /apple-touch-icon.png
[2014-05-28 12:32] /apple-touch-icon.png
[2014-05-28 12:32] /apple-touch-icon.png
[2014-05-28 14:48] /catweasel.jpg
[2014-05-28 14:51] /wp-admin/
[2014-05-28 14:59] /wordpress/wordpress/wp-admin/
[2014-05-28 15:08] /wordpress/wp-admin/
[2014-05-28 15:15] /feed/
[2014-05-28 15:16] /blog/wp-admin/
[2014-05-28 15:25] /wp/wp-admin/
[2014-05-28 15:33] /old/wp-admin/
[2014-05-28 18:44] /wp-admin/
[2014-05-28 18:52] /wordpress/wordpress/wp-admin/
[2014-05-28 18:56] /index.php
[2014-05-28 19:01] /wordpress/wp-admin/
[2014-05-28 19:14] /apple-touch-icon-precomposed.png
[2014-05-28 19:14] /apple-touch-icon.png
[2014-05-28 19:17] /wp/wp-admin/
[2014-05-28 19:25] /old/wp-admin/

3 个答案:

答案 0 :(得分:0)

其中一些是自动攻击,您可能会针对特定请求引入延迟,但它不会阻止它们。阻止或引入延迟的努力对攻击者的影响可以忽略不计。您不应该担心这些请求,因为只要您的网站是公开的,无论您做什么都会发生。有很多人在进行这些自动攻击,因此惩罚一个人的延迟不会阻止更多人从其他人那里进入。阻止IP也是如此,如果你阻止一个IP,另一个IP就会显示出来。

处理攻击的最佳方法是做好准备,密切关注您在网站上使用的库和功能,看看它们是否容易受到攻击。还要确保您不会受到SQL注入,XSS,CSRF等常见攻击的攻击。<​​/ p>

答案 1 :(得分:0)

是的,它们是僵尸程序,最佳做法是忽略它们或让loadbalanser处理机器人请求。

然而,如果你觉得你想以一种小而幼稚的方式惩罚他们;一种方法是使用巨大的时间将所有请求别名为脚本。这样的脚本将对你的cpu负载做什么是另一个问题,你将对这个主题进行一些测试或阅读。

php示例:

set_time_limit(999999); // Add a huge amout of seconds to the timeout, if safemode is on this will be ignore and there is no workaround.
sleep(99999); //Hey who said sleep was a no-do :P
echo "ehehehe";

答案 2 :(得分:0)

您可以添加一个处理程序,将所有这些请求重定向到http://localhost/ $ requestedURL

请确保不要在列表中包含您网站上的任何真实网页。