Information exposure vulnerability has been identified in Apache Kafka.
The NetworkClient component will output entire requests and responses information in the DEBUG log level in the logs. By default, the log level is set to INFO level. If the DEBUG level is enabled, the sensitive information will be exposed via the requests and responses output log. The entire lists of impacted requests and responses are:
AlterConfigsRequest
AlterUserScramCredentialsRequest
ExpireDelegationTokenRequest
IncrementalAlterConfigsRequest
RenewDelegationTokenRequest
SaslAuthenticateRequest
createDelegationTokenResponse
describeDelegationTokenResponse
SaslAuthenticateResponse
This issue affects Apache Kafka: from any version supported the listed API above through v3.9.1, v4.0.0. We advise the Kafka users to upgrade to v3.9.2, v4.0.1, or later to avoid this vulnerability.
Apache Kafka before versions 0.10.2.2, 0.11.0.3, 1.0.1 and 1.1.0 allow users to perform actions reserved for the Broker via manually created fetch requests that interfere with data replication, resulting in data loss.
External Reference:
https://lists.apache.org/thread.html/29f61337323f48c47d4b41d74b9e452bd60e65d0e5103af9a6bb2fef@%3Cusers.kafka.apache.org%3E
Upstream Patches:
https://github.com/apache/kafka/commit/d2932ad370c5b56edac9d99e6d75f199537a569f https://github.com/apache/kafka/commit/580f743c3ce633241d6076ce83fb778cea86a1f6 https://github.com/apache/kafka/commit/51f0f3ee792cf9352ce61afeca098c765cdad664
In Apache Kafka 0.10.0.0 to 0.10.2.1 and 0.11.0.0 to 0.11.0.1, authenticated Kafka clients may use impersonation via a manually crafted protocol message with SASL/PLAIN or SASL/SCRAM authentication when using the built-in PLAIN or SCRAM server implementations in Apache Kafka.