最有效的终止ASPX Web请求的方法

时间:2009-09-08 12:26:34

标签: asp.net denial-of-service

我正在编写一些应用程序逻辑,可以识别对IIS 5 aspx页面发出的格式错误或恶意的http发布数据请求。终止错误请求的最有效方法是什么?

在识别出错误请求的时刻,将没有缓冲输出,并且C#函数退出堆栈很浅。

我现在的预感是,响应.End()及其线程终止异常的额外混乱可能在DOS攻击情况下比常规204“无内容”响应更具破坏性。

为了对我的网站正在做什么有所了解,所有aspx命中都会导致数据库查询活动,例如10毫秒到300毫秒,因此在0.5毫秒内响应格式错误的请求作为常规204回复代表了大量节省。

1 个答案:

答案 0 :(得分:0)

我会创建一个自定义的IHttpModule并让它预处理所有aspx(或任何其他你想要的文件类型)。

如果您不熟悉IHttpModule,它们包含OnBeginRequest OnError等方法。您可以在web.config文件中注册它们。你可以轻松地拥有一个在请求开始时运行的自定义的东西,并让它寻找顽皮的位。

http://msdn.microsoft.com/en-us/library/ms227673.aspx