摘自本文:在 IIS 中禁用跟踪/追踪 | Techstacks HOWTO 的,我了解到您需要安装 UrlScan Filter 才能在 IIS 7.5 上禁用 TRACE/TRACK 请求。但是,我在安装 UrlScan Filter 时遇到了麻烦(我不是 .NET 开发人员)——Microsoft UrlScan Filter v3.1 安装向导失败,并显示消息“需要 IIS Metabase”|服务器故障。
还有其他方法可以禁用 TRACE/TRACK 请求吗?
答案1
在 IIS 7.0 或更高版本中,它不再依赖 UrlScan。您可以配置<requestFiltering>
为 DENY 动词 TRACE。例如,在您的 web.config 中:
<configuration>
<system.webServer>
<security>
<requestFiltering>
<verbs>
<add verb="TRACE" allowed="false" />
</verbs>
</requestFiltering>
</security>
</system.webServer>
</configuration>
您可以在此处找到详细信息:https://docs.microsoft.com/en-us/iis/configuration/system.webServer/security/requestFiltering/verbs/
答案2
如果有人仍然难以禁用 TRACE/TRACK 动词,请按照以下说明通过 IIS 管理器执行此操作:
- 转至 IIS 管理器
- 点击网站名称
- 双击“请求过滤”(如果您没有看到请求过滤图标,请安装它)
- 转到“HTTP 动词”选项卡
- 从操作菜单中单击“拒绝动词”。输入“TRACE”。单击“确定”
- 从操作菜单中单击“拒绝动词”。输入“TRACK”。单击“确定”
请注意,在 IIS 7 之后,TRACK 动词默认是禁用的。除 IIS 8.5 外,TRACE 也被禁用:
有关此主题的更多信息:如何在 IIS 中禁用 HTTP TRACK 和 TRACE 动词?