畅享网 关注
手机版

梭子鱼网络:如何防护 httpoxy 漏洞

  1. 云栖社区>
  2. 畅享网>
  3. 博客>
  4. 正文

梭子鱼网络:如何防护 httpoxy 漏洞

玄学酱 2018-05-18 13:44:00 浏览58 评论0

摘要: 新的一天,新的主题:这次是httpoxy。在特定的网络服务器配置下,恶意用户可通过该漏洞拦截服务器之间的内部通信,或使服务器资源过载导致拒绝服务。httpoxy的核心是2个不相关实体之间的命名冲突——HTTP标头信息和环境变量。

新的一天,新的主题:这次是httpoxy。在特定的网络服务器配置下,恶意用户可通过该漏洞拦截服务器之间的内部通信,或使服务器资源过载导致拒绝服务。httpoxy的核心是2个不相关实体之间的命名冲突——HTTP标头信息和环境变量。

2016-08-10-3884af89d1-49df-4a76-9680-998

作用原理

浏览器向网络服务器发送请求时,会包含若干标头信息,用于说明请求。例如,浏览器会发送“接受语言”标头信息,指示服务器以特定语言返回内容(如可用),或用“Cookie”标头信息传送浏览器在服务器上保留的任何 cookie。另外一个可能的标头信息是“Proxy”(代理)。存在漏洞的服务器配置会将若干标头信息复制到“HTTP”前缀的环境变量中,使网络应用代码可以轻松访问。例如,“Proxy”将被复制到名为“HTTP_PROXY”的环境变量中。这就是问题所在:“HTTP_PROXY”环境变量常用于另一个完全不同的用途——配置 HTTP proxy 设置。网络客户端原本无权配置该设置,但通过这个漏洞就能做到。

更糟的是,当用户访问网络应用并调用内部网络服务检索信息时,在应用间的内部调用中,密码等认证数据会来回传送。虽然在这个时候用户通常看不到密码。

2016-08-10-03764e0f12-40f8-440a-a4ec-013

但在漏洞环境中,用户可以要求网络服务器通过用户选择的服务器代理对外请求,这样就能命令网络服务器将所有对外请求发送到特定的服务器上,而不是直接发送到目的地。以下作用示意图:

可以看到,包括所有密码在内的内部请求信息现在发送到了用户控制的代理服务器上,而不是内部服务器。在这种情况下,用户可以使用这些密码越权访问内部数据库或文件,这将带来灾难性的后果。

2016-08-10-28e6664d50-ecc5-42f1-925b-43d

保护自己

保护自己免受httpoxy侵害非常简单,您只需采用 梭子鱼Web应用防火墙并添加"Header Deny Rule"即可。指定“Proxy”标头信息名,将最大头信息数据长度设为0。这就能阻挡内容不是空字符串的Proxy头信息,防止用户控制您的服务器代理设置。您还可以在网络应用防火墙模块的“网站->允许/拒绝筛选”中添加头"Header Deny Rule"。

由于Proxy标头信息并非标准信息而且是不正当使用,所以您可以在所有地方使用此修复,甚至是没有漏洞的环境,而且不会产生任何不良后果。与寻找漏洞服务器相比(如果有的话),这种方法更为方便快捷;而且保护未来部署的有漏洞的服务器。



本文出处:畅享网
本文来自云栖社区合作伙伴畅享网,了解相关信息可以关注vsharing.com网站。

用云栖社区APP,舒服~

【云栖快讯】诚邀你用自己的技术能力来用心回答每一个问题,通过回答传承技术知识、经验、心得,问答专家期待你加入!  详情请点击

网友评论

玄学酱
文章23240篇 | 关注240
关注
由轻量级Agent和云端组成,集云盾威胁情报于一体,通过Agent和云端大数据的联动,为您提... 查看详情
帮助您基于阿里云构建出一个隔离的网络环境。您可以完全掌控自己的虚拟网络,如选择自有 IP 地... 查看详情
用配置管理(Application Configuration Management,简称 ... 查看详情
为您提供简单高效、处理能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维效... 查看详情
阿里云总监课正式启航

阿里云总监课正式启航