我的网站被一些自动运行的libwww-perl BOT/0.1 (BOT for JCE)和Gecko/20100101
有没有什么办法可以让我的所有网站只适用于真正的浏览器,而不是这些自动化的脚本。
不,您不能确保您的网站只适用于真正的浏览器。 这是因为您唯一需要确定客户端平台和Web浏览器的数据源是请求头,这些头可以被黑客完全伪造。
例如,黑客可以使用像Fiddler这样的工具,通过伪造的User-Agent请求标头向您的网站发送自定义的HTTP请求,该标头看起来就像Internet Explorer,Chrome,Firefox,Googlebot或其他HTTP客户端。 因此,如果不是不可能的话,根据HTTP请求数据从合法用户辨别黑客是非常困难的。
我可以给你列出你可以忍受的无数防御(限制用户代理,使用XML文件中的JavaScript显示你的内容,validation码 – 一个让你的观众失望的好办法!),但是他们只会避开不可避免的,而他们如何解决它们。
通过这个问题的核心来争取利益是最好的,而不是在防守到位之后进行防御。 如果可以,请查看应用程序,并尝试了解他们如何进入,并尝试修补漏洞。 最显而易见的地方是表单input – 它们是否会先传递给SQLstring而不被先parsing? 他们是否生成SQLstring而不是使用预处理语句(这会消除单词go中的SQL注入尝试)? 如果这是你可以修复的东西,那么。 如果是别人的产品,请创build一个补丁并发送给他们。
你可以在安全方面做的最糟糕的事情是假设它不会发生在你身上。 蠕虫,病毒和自动机器人通常不够聪明,不能认识到你的小站点不是威胁。
要聪明,要安全,要注意。