首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何修复IIS上的HTTP请求走私

如何修复IIS上的HTTP请求走私
EN

Stack Overflow用户
提问于 2020-03-16 18:39:21
回答 1查看 2.7K关注 0票数 1

在我的HTTP应用程序中,我想解决ASP.NET请求走私漏洞问题。

我想如果我阻止带有"Transfer-Encoding: chunked“头的请求就足够了。在IIS管理菜单上,我为此添加了新的请求过滤规则。然而,这似乎并没有解决问题。

我编写了一些.NET代码来测试IIS在发送分块内容时是否会生成404错误。如下所示,当我将传输编码报头1次添加到我的测试客户机代码中时,我没有收到404,我收到了200。

代码语言:javascript
复制
httpRequest.Headers.Add("Transfer-Encoding", "chunked");

有趣的是,我将标题添加了两次(我的意思是复制它)为

代码语言:javascript
复制
httpRequest.Headers.Add("Transfer-Encoding", "chunked");
httpRequest.Headers.Add("Transfer-Encoding", "chunked");

应用了过滤规则,我收到了404,正如我所预期的那样。

我怎么才能修复它呢?

EN

回答 1

Stack Overflow用户

发布于 2021-02-25 04:06:28

几个月后,Microsoft添加了一个补丁,您可以在其中使用注册表项禁用请求走私..。

  1. 单击开始,单击运行,然后输入Regedit在“打开”框中,然后单击“确定”。
  2. 找到并单击以下注册表子项:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
  3. 设置DWORD类型值DisableRequestSmuggling设置为以下其中一项:
  • 设置为0可禁用过滤器
  • 设置为1可启用过滤器

4. 退出注册表编辑器。

5. 重新启动计算机。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60704397

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档