根据URL参数拒绝IIS6的Web请求?

我有一个传统的应用程序运行IIS6下的第三方电子商务系统。 一些垃圾邮件发送者最近在其中一家商店的窗体中发现了一个安全漏洞,允许他们从我们的系统发送任意电子邮件。 不幸的是,这个商店的“function”内置到default.aspx页面的代码隐藏,我没有办法禁用它closures商店。

我怎样才能过滤出一个给定的查询string参数的URL请求? 即,我想过滤掉请求:

http://www.mysite.com/store/?id=SendSpam

基于“SendSpam”string。

第一个解决scheme:使用模拟Apache的ModRewrite for IIS的isapifilter。 search“mod_rewrite iis”。

另一种方法是在.net中编写一个httpmodule,它将实现一个inputfilter,并将其加载到web.config中的.net应用程序中。

请注意,这些都不会允许您更改查询string参数,但它们会让您在应用程序被击中之前进行redirect或403 Forbidden响应。

或者有微软的urlscan,它应该能够做到上面所描述的。