Kafka
Уязвимости
27
Эксплуатируемые
0
Макс. CVSS
9.9
Макс. EPSS
0.60841
Распределение по критичности
Критический
2
Высокий
13
Средний
12
Низкий
0
Затронутые диапазоны версий
0.10.0.0–0.10.2.10.10.2.0–3.7.20.11.0.0–2.1.00.11.0–3.9.20.9.0.0–0.9.0.12.0.0–2.6.32.0.0–3.4.02.3.0–3.5.22.3.0–3.9.12.8.0–2.8.23.1.0–3.9.13.5.0–3.6.14.0.0–4.3.04.1.0–4.1.2
Также сопоставлено как (исходные строки): kafka,spark
Топ уязвимостей
BDU:2025-08198Уязвимость диспетчера сообщений Apache Kafka связана с недостатками механизма десериализации. Эксплуатация уязвимости может позволить нарушителю, действующему удаленно, выполнить удаленный код
CVE-2026-33557Возможный уязвимость в области безопасности был выявлен в Apache Kafka.
По умолчанию собственность брокера `sasl.oauthbearer.jwt.validator.class` установлена на "org.apache.kafka.common.com.cowthbearer.DefaultJwtValidator`". Он принимает любой токен JWT без проверки его подписи, эмитента или аудитории. Злоумышленник может генерировать токен JWT от любого эмитента с набором `preferred_username` любому пользователю, и брокер примет его.
Мы советуем пользователям Кафки, использующих kafka v4.1.0 или v4.1.1, установить конфигурацию `sasl.oauthbearer.jwt.validator.class` на `org.apache.kafka.common.security.oauthbear.BrokerJwtValidator` явно, чтобы избежать этой уязвимости. Поскольку Kafka v4.1.2 и v4.2.0 и более поздних версий, проблема исправлена и правильно проверит токен JWT.
CVE-2025-27818В Apache Kafka обнаружена уязвимость, связанная с возможностью выполнения произвольного кода при использовании LdapLoginModule в конфигурации SASL JAAS. Злоумышленник с доступом к изменению конфигурации коннектора Kafka Connect может использовать эту уязвимость для выполнения Java-десериализации гаджетов на сервере Kafka Connect [1].
Источники:
- [1] https://kafka.apache.org/cve-list
CVE-2018-17196В Apache Kafka версий от 0.11.0.0 до 2.1.0 можно вручную создать запрос Produce, который обходит проверку ACL транзакции/идемпотентности. Только аутентифицированные клиенты с разрешением Write для соответствующих тем могут использовать эту уязвимость. Пользователям следует обновиться до версии 2.1.1 или более поздней, где эта уязвимость была исправлена.
BDU:2025-08199Уязвимость диспетчера сообщений Apache Kafka связана с недостатками механизма десериализации. Эксплуатация уязвимости может позволить нарушителю, действующему удаленно, вызвать отказ в обслуживании
BDU:2022-03778Уязвимость диспетчера сообщений Apache Kafka связана с недостатками разграничения доступа при использовании списка управления доступом ACL (Access Control List). Эксплуатация уязвимости может позволить нарушителю, действующему удаленно, обойти ограничения безопасности с помощью специально созданного запроса
BDU:2026-06346Уязвимость диспетчера сообщений Apache Kafka связана с использованием памяти после её освобождения. Эксплуатация уязвимости может позволить нарушителю, действующему удаленно, оказать воздействие на конфиденциальность и целостность защищаемой информации
BDU:2023-05223Уязвимость программной платформы Spring для Apache Kafka (spring-kafka) связана с недостатками механизма десериализации. Эксплуатация уязвимости может позволить нарушителю выполнить произвольный код или вызвать отказ в обслуживании
CVE-2025-27819В CVE-2023-25194 мы объявили об атаке RCE/отказа в обслуживании через конфигурацию SASL JAAS JndiLoginModule в Kafka Connect API. Но не только Kafka Connect API уязвим к этой атаке, брокеры Apache Kafka также имеют эту уязвимость. Для эксплуатации этой уязвимости злоумышленник должен иметь возможность подключиться к кластеру Kafka и иметь разрешение AlterConfigs на ресурс кластера. С версии Apache Kafka 3.4.0 добавлен системный параметр ("-Dorg.apache.kafka.disallowed.login.modules") для отключения использования проблемных модулей входа в конфигурации SASL JAAS. По умолчанию "com.sun.security.auth.module.JndiLoginModule" отключен в Apache Kafka 3.4.0, а "com.sun.security.auth.module.JndiLoginModule,com.sun.security.auth.module.LdapLoginModule" отключены по умолчанию в Apache Kafka 3.9.1/4.0.0 [1].
Источники:
- [1] https://kafka.apache.org/cve-list
CVE-2025-27817В Apache Kafka Client обнаружена потенциальная уязвимость произвольного чтения файлов и SSRF. Apache Kafka Clients принимают конфигурационные данные для настройки соединения SASL/OAUTHBEARER с брокерами, включая "sasl.oauthbearer.token.endpoint.url" и "sasl.oauthbearer.jwks.endpoint.url". Злоумышленники могут использовать эту конфигурацию для чтения произвольных файлов и отправки запросов на непредвиденное местоположение [1].
Рекомендуется обновить Kafka до версии >=3.9.1 и установить свойство JVM `org.apache.kafka.sasl.oauthbearer.allowed.urls` в желаемое значение.
Источники:
- [1] https://kafka.apache.org/cve-list
CVE-2022-34917В Apache Kafka обнаружена уязвимость безопасности. Это затрагивает все выпуски, начиная с 2.8.0. Уязвимость позволяет злонамеренным не прошедшим проверку подлинности клиентам выделять большие объемы памяти на брокерах. Это может привести к тому, что брокеры столкнутся с OutOfMemoryException и вызовут отказ в обслуживании. Примеры сценариев: - Кластер Kafka без аутентификации: любой клиент, способный установить сетевое соединение с брокером, может вызвать проблему. - Кластер Kafka с аутентификацией SASL: любой клиент, способный установить сетевое соединение с брокером, без необходимости в действительных учетных данных SASL, может вызвать проблему. - Кластер Kafka с аутентификацией TLS: только клиенты, способные успешно пройти аутентификацию через TLS, могут вызвать проблему. Мы советуем пользователям обновить установки Kafka до одной из версий 3.2.3, 3.1.2, 3.0.2, 2.8.2.
CVE-2019-12399Когда рабочие процессы Connect в Apache Kafka 2.0.0, 2.0.1, 2.1.0, 2.1.1, 2.2.0, 2.2.1 или 2.3.0 настроены с одним или несколькими поставщиками конфигурации, и соединитель создан/обновлен в этом кластере Connect для использования внешней секретной переменной в подстроке значения свойства конфигурации соединителя, любой клиент может отправить запрос в тот же кластер Connect для получения конфигурации задачи соединителя, и ответ будет содержать секретный текст, а не внешние секретные переменные.
BDU:2025-06880Уязвимость конфигурации sasl.oauthbearer.token.endpoint.url и sasl.oauthbearer.jwks.endpoint.url клиента диспетчера сообщений Apache Kafka связана с недостаточной проверкой поступающих запросов. Эксплуатация уязвимости может позволить нарушителю, действующему удаленно, осуществить SSRF-атаку
BDU:2023-00007Уязвимость диспетчера сообщений Apache Kafka связана с неограниченным распределением ресурсов или дросселированием. Эксплуатация уязвимости может позволить нарушителю, действующему удалённо, вызвать отказ в обслуживании
BDU:2021-01001Уязвимость компонента Connect workers диспетчера сообщений Apache Kafka связана с передачей данных в открытом виде. Эксплуатация уязвимости может позволить нарушителю, действующему удаленно, получить несанкционированный доступ к защищаемой информации
CVE-2024-27309Во время миграции кластера Apache Kafka из режима ZooKeeper в режим KRaft в некоторых случаях ACL не будут правильно применяться.
Для того чтобы вызвать ошибку, нужны две предварительные условия:
1. Администратору решает удалить ACL
2. Ресурс, связанный с удаленным ACL, продолжает иметь два или более других ACL, связанных с ним после удаления.
Когда выполнены оба этих предварительных условия, Kafka будет рассматривать ресурс так, как будто у него был только один ACL связанный с ним после удаления, а не два или более, что было бы правильно.
Неправильное состояние устраняется удалением всех брокеров в режиме ZK или добавлением нового ACL к затронутому ресурсу. После завершения миграции потеря метаданных не происходит (все ACL остаются).
Полное воздействие зависит от используемых ACL. Если во время миграции были настроены только ACL УПРОЩЕНИЯ, влияние будет ограничено воздействием на доступность. Если были настроены ACL ОТКАЗ, влияние может включать конфиденциальность и целостность в зависимости от настроенных ACL, так как ACL ОТКАЗ могут быть проигнорированы из-за этой уязвимости в течение периода миграции.
BDU:2024-10294Уязвимость компонента Automatic ConfigProvider диспетчера сообщений Apache Kafka связана с недостаточной защитой служебных данных. Эксплуатация уязвимости может позволить нарушителю, действующему удалённо, раскрыть защищаемую информацию
CVE-2021-38153Некоторые компоненты в Apache Kafka используют `Arrays.equals` для проверки пароля или ключа, что делает их уязвимыми для атак по времени, которые повышают вероятность успешных атак методом перебора для таких учетных данных. Пользователям следует обновиться до версии 2.8.1 или выше, или 3.0.0 или выше, где эта уязвимость была исправлена. Затронутые версии включают Apache Kafka 2.0.0, 2.0.1, 2.1.0, 2.1.1, 2.2.0, 2.2.1, 2.2.2, 2.3.0, 2.3.1, 2.4.0, 2.4.1, 2.5.0, 2.5.1, 2.6.0, 2.6.1, 2.6.2, 2.7.0, 2.7.1 и 2.8.0.
BDU:2024-00046Уязвимость диспетчера сообщений Apache Kafka связана с раскрытием информации через несоответствие. Эксплуатация уязвимости может позволить нарушителю, действующему удаленно, реализовать атаку методом «грубой силы» (brute force)
CVE-2018-1288В Apache Kafka с 0.9.0.0 по 0.9.0.1, с 0.10.0.0 по 0.10.2.1, с 0.11.0.0 по 0.11.0.2 и 1.0.0 аутентифицированные пользователи Kafka могут выполнять действия, зарезервированные для брокера, с помощью созданного вручную запроса выборки, вмешиваясь в репликацию данных, что приводит к потере данных.
CVE-2017-12610В Apache Kafka 0.10.0.0 - 0.10.2.1 и 0.11.0.0 - 0.11.0.1 аутентифицированные клиенты Kafka могут использовать олицетворение через вручную созданное сообщение протокола с аутентификацией SASL/PLAIN или SASL/SCRAM при использовании встроенных реализаций серверов PLAIN или SCRAM в Apache Kafka.
CVE-2026-33558Уязвимость воздействия информации была выявлена в Apache Kafka.
Компонент NetworkClient будет выводить в журналы журналов DEBUG всю информацию о запросах и ответах. По умолчанию уровень журнала устанавливается на уровень INFO. Если уровень DEBUG включен, конфиденциальная информация будет раскрываться через журнал вывода запросов и ответов. Целые списки затронутых запросов и ответов:
* AlterConfigsЗапрос
* AlterUserScramКреденциал Запрос
* ExpireDelegationToken Запрос
* IncrementalAlterКонфиденции Запрос
* RenewDelegationTokenЗапрос
* SaslAuthenticate Запрос
* создать DelegationTokenОтвет
* описать делегациюТокенОтвет
* SaslAuthenticateResponse
Эта проблема затрагивает Apache Kafka: из любой версии, поддерживаемой перечисленным API выше, через v3.9.1, v4.0.0. Мы советуем пользователям Кафки обновиться до v3.9.2, v4.0.1 или более поздних версий, чтобы избежать этой уязвимости.
CVE-2024-56128Неправильная реализация алгоритма аутентификации в реализации SCRAM Apache Kafka.
Краткое описание проблемы:
Реализация Salted Challenge Response Authentication Mechanism (SCRAM) в Apache Kafka не полностью соответствовала требованиям RFC 5802 [1].
В частности, согласно RFC 5802, сервер должен проверить, что nonce, отправленный клиентом во втором сообщении, соответствует nonce, отправленному сервером в его первом сообщении.
Однако реализация SCRAM в Kafka не выполняла эту проверку.
Воздействие:
Эта уязвимость может быть использована только в том случае, если злоумышленник имеет доступ к обмену аутентификацией SCRAM в виде открытого текста. Однако использование SCRAM через открытый текст настоятельно не рекомендуется, поскольку это считается небезопасной практикой [2]. Apache Kafka рекомендует развертывать SCRAM исключительно с шифрованием TLS для защиты обменов SCRAM от перехвата [3].
Развертывания, использующие SCRAM с TLS, не подвержены этой проблеме.
Как определить, затронуты ли вы:
Если ваше развертывание использует аутентификацию SCRAM через каналы связи в виде открытого текста (без шифрования TLS), вы, вероятно, затронуты.
Чтобы проверить, включен ли TLS, просмотрите файл конфигурации server.properties на предмет свойства listeners. Если у вас есть SASL_PLAINTEXT в слушателях, то вы, вероятно, затронуты.
Детали исправления:
Проблема была решена путем введения проверки nonce в окончательном сообщении обмена аутентификацией SCRAM для обеспечения соответствия RFC 5802.
Затронутые версии:
Apache Kafka версии с 0.10.2.0 по 3.9.0, исключая исправленные версии ниже.
Исправленные версии:
3.9.0
3.8.1
3.7.2
Пользователям рекомендуется обновиться до версии 3.7.2 или более поздней, чтобы снизить эту проблему.
Рекомендации по смягчению последствий:
Пользователи, которые не могут обновиться до исправленных версий, могут смягчить проблему, выполнив следующие действия:
- Использование TLS с аутентификацией SCRAM:
Всегда развертывайте SCRAM через TLS для шифрования обменов аутентификацией и защиты от перехвата.
- Рассмотрение альтернативных механизмов аутентификации:
Оцените альтернативные механизмы аутентификации, такие как PLAIN, Kerberos или OAuth с TLS, которые обеспечивают дополнительные уровни безопасности.
CVE-2024-31141Файлы или каталоги, доступные для внешних сторон, уязвимость Improper Privilege Management в Apache Kafka Clients.
Apache Kafka Clients принимает данные конфигурации для настройки поведения и включает плагины ConfigProvider для управления этими конфигурациями. Apache Kafka также предоставляет реализации FileConfigProvider, DirectoryConfigProvider и EnvVarConfigProvider, которые включают возможность чтения с диска или переменных среды.
В приложениях, где конфигурации Apache Kafka Clients могут быть указаны недоверенной стороной, злоумышленники могут использовать эти ConfigProvider для чтения произвольного содержимого диска и переменных среды.
В частности, этот недостаток может быть использован в Apache Kafka Connect для повышения привилегий с доступа к REST API до доступа к файловой системе/окружению, что может быть нежелательно в определенных средах, включая SaaS-продукты.
Эта проблема затрагивает Apache Kafka Clients: с 2.3.0 по 3.5.2, 3.6.2, 3.7.0.
Пользователям с затронутыми приложениями рекомендуется обновить kafka-clients до версии >=3.8.0 и установить системное свойство JVM "org.apache.kafka.automatic.config.providers=none".
Пользователям Kafka Connect с одной из перечисленных реализаций ConfigProvider, указанных в их рабочей конфигурации, также рекомендуется добавить соответствующие "allowlist.pattern" и "allowed.paths", чтобы ограничить их работу соответствующими границами.
Для пользователей Kafka Clients или Kafka Connect в средах, которые доверяют пользователям доступ к диску и переменным среды, не рекомендуется устанавливать системное свойство.
Для пользователей Kafka Broker, Kafka MirrorMaker 2.0, Kafka Streams и инструментов командной строки Kafka не рекомендуется устанавливать системное свойство.
BDU:2025-00027Уязвимость механизма аутентификации Salted Challenge Response Authentication Mechanism (SCRAM) диспетчера сообщений Apache Kafka связана с отсутствием проверки одноразовых номеров сообщений между клиентом и сервером. Эксплуатация уязвимости может позволить нарушителю, действующему удалённо, обойти ограничения безопасности и получить несанкционированный доступ к защищаемой информации