gpt4 book ai didi

asp.net - 使用ASP.NET MVC阻止ZmEu攻击

转载 作者:行者123 更新时间:2023-12-04 03:17:25 25 4
gpt4 key购买 nike

最近,我的Elmah异常日志充满了使用dam ZmEu安全软件对我的服务器进行攻击的人们的尝试

对于那些想“ZmEu到底是什么?”的人这是一个解释...

“ZmEu似乎是一种安全工具,用于发现基于Web的MySQL数据库管理器PHPMyAdmin的2.x.x版中的安全漏洞。该工具似乎起源于东欧的某个地方。就像所有黑帽安全工具似乎正在发生的事情一样,它进入了中国,此后一直在中国用于对世界各地的Web服务器进行不间断的暴力攻击。”

关于这种烦人的攻击,这是一个很好的链接-> http://www.philriesch.com/articles/2010/07/getting-a-little-sick-of-zmeu/

我使用的是.net,因此他们无法在我的服务器上找到PHPMyAdmin,但事实是我的日志中充满了ZmEu,这使它变得很烦人。

上面的链接使用HTAccess提供了一个很好的修复程序,但是使用IIS7.5而不是Apache即时消息。
我有一个asp.net MVC 2网站,所以我使用global.asax文件创建了路由

这是HTAccess的名称

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/path/to/your/abusefile.php
RewriteCond %{HTTP_USER_AGENT} (.*)ZmEu(.*)
RewriteRule .* http://www.yourdomain.com/path/to/your/abusefile.php [R=301,L]
</IfModule>

我的问题是,我可以在Global.ascx文件中添加类似功能的任何东西吗?

最佳答案

my other one的另一种选择。。。该解决方案专门阻止Elmah记录ZmEu生成的404错误,同时使其余网站的行为保持不变。与直接向黑客返回消息相比,这可能不那么明显。

您可以控制Elmah登录various ways的内容,一种方法是将其添加到Global.asax

void ErrorLog_Filtering(object sender, ExceptionFilterEventArgs e)
{
if (e.Exception.GetBaseException() is HttpException)
{
HttpException httpEx = (HttpException)e.Exception.GetBaseException();
if (httpEx.GetHttpCode() == 404)
{
if (Request.UserAgent.Contains("ZmEu"))
{
// stop Elmah from logging it
e.Dismiss();
// log it somewhere else
logger.InfoFormat("ZmEu request detected from IP {0} at address {1}", Request.UserHostAddress, Request.Url);
}
}
}
}

为了触发该事件,您需要从项目中引用Elmah DLL,并在Global.asax.cs的顶部添加一个 using Elmah;

logger.InfoFormat开头的行假定您正在使用log4net。如果不是,请将其更改为其他内容。

关于asp.net - 使用ASP.NET MVC阻止ZmEu攻击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3846304/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com