有人本不应该扫描我的网站,却试图利用一些 php 漏洞。我已经开始封锁他们的 IP,但不止一个人在这么做,而且每次请求都会导致服务器错误,从而触发错误报告到我的收件箱中。在过去 3 天里,我每晚都会收到近 2000 封电子邮件。
我们是一家 .net 商店,他们攻击的网站中没有任何 php。我想阻止所有 .cgi、.php 和 .ini 文件类型的请求。这很容易做到文件扩展名代替请求过滤在 IIS 中。处理如下请求:
我的问题是他们试图利用错误页面进行攻击:
因此,对于这个,我只想查看 URL,如果发现 .cgi,则阻止该请求。我该怎么做?我可能还想阻止其中包含 ../ 的请求。
答案1
看起来你可以做这样的事情:
<configuration>
<system.webServer>
<security>
<requestFiltering>
<denyUrlSequences>
<add sequence=".."/>
</denyUrlSequences>
</requestFiltering>
</security>
</system.webServer>
</configuration>
它应该过滤请求中带有“..”的任何内容。
参考: http://learn.iis.net/page.aspx/143/use-request-filtering/
这是一个打地鼠的游戏,因此请尽量不要太疯狂地制作大量的过滤器:)。