【安全通报】HAProxy HTTP请求走私漏洞(CVE-2021-40346)

product20210909.png

近日,国外安全研究团队公布了HAProxy HTTP请求走私(Request Smuggling)漏洞,攻击者可利用该漏洞绕过安全控制,执行未经授权的命令等敏感操作。

漏洞描述

HAProxy是 HAProxy公司的一款开源的TCP/HTTP负载均衡服务器。该服务器提供4层、7层代理,并能支持上万级别的连接,具有高效、稳定等特点。

CVE-2021-40346

HAProxy 2.0 到 2.5 中的htx_add_header()存在整数溢出漏洞,该漏洞可被利用来执行 HTTP 请求走私攻击,允许攻击者绕过安全控制、执行未经授权的命令等敏感操作(具体取决于HAProxy的配置和后端Web服务器配置)。

该漏洞CVSS评分:8.6,危害等级:高危

CVE 编号

CVE-2021-40346

FOFA 查询

app="HAPROXY-代理"

影响范围

影响版本 修复版本
HAProxy 2.0 2.0.25
HAProxy 2.2 2.2.17
HAProxy 2.3 2.3.14
HAProxy 2.4 2.4.4
HAProxy Enterprise 2.0r1 2.0r1-235.1230
HAProxy Enterprise 2.1r1 2.1r1-238.625
HAProxy Enterprise 2.2r1 2.2r1-241.505
HAProxy Enterprise 2.3r1 2.3r1-242.345
HAProxy Kubernetes Ingress Controller 1.6 1.6.7
HAProxy Enterprise Kubernetes Ingress Controller 1.6 1.6.7
HAProxy ALOHA 11.5 11.5.13
HAProxy ALOHA 12.5 12.5.5
HAProxy ALOHA 13.0 13.0.7

根据目前FOFA系统最新数据(一年内数据),显示全球范围内(app="HAPROXY-代理")共有 8,433 个相关服务对外开放。美国使用数量最多,共有 2,362 个;德国第二,共有 1,037 个;法国第三,共有 945 个;日本第四,共有 521 个;中国第五,共有 315 个。

全球范围内分布情况如下(仅为分布情况,非漏洞影响情况)

global20210909.png

中国大陆地区上海使用数量最多,共有 29 个;北京第二,共有 22 个;福建第三,共有 21 个;四川第四,共有 20 个;重庆第五,共有 16 个。

country20210909.png

修复建议

及时升级到最新安全版本。

临时修复建议:将以下行添加到HAProxy的配置(拒绝具有多个内容长度标题的请求或响应):

frontend myfrontend
  http-request deny if { req.hdr_cnt(content-length) gt 1 }
  http-response deny if { res.hdr_cnt(content-length) gt 1 }

参考

[1] https://www.haproxy.com/blog/september-2021-duplicate-content-length-header-fixed/

[2] https://jfrog.com/blog/critical-vulnerability-in-haproxy-cve-2021-40346-integer-overflow-enables-http-smuggling/


白帽汇从事信息安全,专注于安全大数据、企业威胁情报。

公司产品:FOFA-网络空间安全搜索引擎、FOEYE-网络空间检索系统、NOSEC-安全讯息平台。

为您提供:网络空间测绘、企业资产收集、企业威胁情报、应急响应服务。

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。查看原文

为您推荐