exporter-toolkit 存在身份验证绕过漏洞

时间:2022-12-03 13:09:27

漏洞描述

exporter-toolkit 是 Prometheus 的导出工具包,

exporter-toolkit 为减少使用 bcrypt 哈希验证用户身份所需要的时间和资源,从而采用缓存 cacheKey = hex(username + hashed password + input password)验证用户身份信息。为了避免侧信道攻击,对于缓存中不存在的用户(validUser)采用固定 hashed password 进行缓存验证。

攻击者在已知散列密码(hashed password)的情况下可通过毒化缓存进行身份绕过:

  1. 发动请求毒化缓存:

username = username+hashed password

password = "fakepassword"

  1. 身份绕过:

username = username

password = bcrypt(fakepassword)+"fakepassword"

Prometheus 是一个开源的系统和服务监控系统,目前在 GitHub 具有 45.7k stars,Prometheus 在 2.37.4 和 2.40.4 之前的版本中受此漏洞影响。

漏洞名称 exporter-toolkit 存在身份验证绕过漏洞
漏洞类型 认证算法的不正确实现
发现时间 2022-11-30
漏洞影响广度
MPS编号 MPS-2022-65539
CVE编号 CVE-2022-46146
CNVD编号 -

影响范围

github.com/prometheus/exporter-toolkit@(-∞, 0.7.2)

github.com/prometheus/exporter-toolkit@[0.8.0, 0.8.2)

修复方案

升级github.com/prometheus/exporter-toolkit到 0.7.2 或 0.8.2 或更高版本

参考链接

https://www.oscs1024.com/hd/MPS-2022-65539

https://github.com/prometheus/exporter-toolkit/security/advisories/GHSA-7rg2-cxvp-9p7p

https://github.com/prometheus/exporter-toolkit/commit/5b1eab34484ddd353986bce736cd119d863e4ff5

https://nvd.nist.gov/vuln/detail/CVE-2022-46146

    

情报订阅

OSCS(开源软件供应链安全社区)通过最快、最全的方式,发布开源项目最新的安全风险动态,包括开源组件安全漏洞、事件等信息。同时提供漏洞、投毒情报的免费订阅服务,社区用户可通过配置飞书、钉钉、企业微信机器人,及时获得一手情报信息推送:

https://www.oscs1024.com/cm/?src=osc

具体订阅方式详见:

https://www.oscs1024.com/docs/vuln-warning/intro/?src=osc

exporter-toolkit 存在身份验证绕过漏洞