🔍 CVE-2024-31141

6.5
CVSS Score
MEDIUM
2024-11-19
2026-06-17 07:27
✅ 완료

🇰🇷 한글 설명

Apache Kafka Clients의 부적절한 권한 관리 취약점으로 인해, 신뢰할 수 없는 사용자가 구성 데이터를 지정할 수 있는 환경에서 임의의 디스크 파일이나 환경 변수를 읽을 수 있습니다. 특히 Apache Kafka Connect를 사용하는 경우 REST API 접근을 통해 파일 시스템이나 환경 변수 접근 권한을 탈취하는 권한 상승 공격이 가능합니다.

💡 쉬운 설명

해커가 설정값을 조작하여 컴퓨터 안에 있는 중요한 파일이나 비밀번호가 담긴 환경 변수를 몰래 읽어갈 수 있는 문제입니다. Kafka 설정을 외부 사용자가 건드릴 수 있는 환경이라면 매우 위험합니다.

🇺🇸 원문 (English)

Files or Directories Accessible to External Parties, Improper Privilege Management vulnerability in Apache Kafka Clients. Apache Kafka Clients accept configuration data for customizing behavior, and includes ConfigProvider plugins in order to manipulate these configurations. Apache Kafka also provides FileConfigProvider, DirectoryConfigProvider, and EnvVarConfigProvider implementations which include the ability to read from disk or environment variables. In applications where Apache Kafka Clients configurations can be specified by an untrusted party, attackers may use these ConfigProviders to read arbitrary contents of the disk and environment variables. In particular, this flaw may be used in Apache Kafka Connect to escalate from REST API access to filesystem/environment access, which may be undesirable in certain environments, including SaaS products. This issue affects Apache Kafka Clients: from 2.3.0 through 3.5.2, 3.6.2, 3.7.0. Users with affected applications are recommended to upgrade kafka-clients to version >=3.8.0, and set the JVM system property "org.apache.kafka.automatic.config.providers=none". Users of Kafka Connect with one of the listed ConfigProvider implementations specified in their worker config are also recommended to add appropriate "allowlist.pattern" and "allowed.paths" to restrict their operation to appropriate bounds. For users of Kafka Clients or Kafka Connect in environments that trust users with disk and environment variable access, it is not recommended to set the system property. For users of the Kafka Broker, Kafka MirrorMaker 2.0, Kafka Streams, and Kafka command-line tools, it is not recommended to set the system property.

📍 영향받는 시스템

Apache Kafka Clients: 2.3.0 ~ 3.5.2, 3.6.2, 3.7.0

⚔️ 공격 벡터

신뢰할 수 없는 사용자가 ConfigProvider 플러그인을 악용하여 임의의 파일 경로 및 환경 변수 읽기 시도

🛡️ 대응 방법

kafka-clients를 3.8.0 이상으로 업그레이드하고, JVM 시스템 속성 'org.apache.kafka.automatic.config.providers=none'을 설정하십시오.

🔧 검증 코드

출력된 결과에서 kafka-clients의 버전을 확인하여 취약한 버전 범위에 해당하는지 체크합니다.

Shell / Script
mvn dependency:list | grep kafka-clients

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N

💻 영향받는 소프트웨어

Spring Data REST