🇰🇷 한글 설명
Apache Camel의 LevelDB 컴포넌트에서 신뢰할 수 없는 데이터를 역직렬화할 때 발생하는 취약점입니다. 공격자가 LevelDB 데이터베이스 파일에 조작된 Java 객체를 주입할 수 있으며, 이를 통해 애플리케이션 권한으로 임의의 코드를 실행할 수 있습니다.
💡 쉬운 설명
프로그램이 데이터를 읽어올 때 검증 없이 내용을 실행해버리는 보안 구멍이 발견되었습니다. 해커가 데이터 파일을 조작하면 컴퓨터를 마음대로 조종할 수 있는 위험이 있습니다.
🇺🇸 원문 (English)
Deserialization of Untrusted Data vulnerability in Apache Camel LevelDB component.
The Camel-LevelDB DefaultLevelDBSerializer class deserializes data read from the LevelDB aggregation repository using java.io.ObjectInputStream without applying any ObjectInputFilter or class-loading restrictions. An attacker who can write to the LevelDB database files used by a Camel application can inject a crafted serialized Java object that, when deserialized during normal aggregation repository operations, results in arbitrary code execution in the context of the application.
This issue affects Apache Camel: from 4.10.0 before 4.10.8, from 4.14.0 before 4.14.5, from 4.15.0 before 4.18.0.
Users are recommended to upgrade to version 4.18.0, which fixes the issue. For the 4.10.x LTS releases, users are recommended to upgrade to 4.10.9, while for 4.14.x LTS releases, users are recommended to upgrade to 4.14.5
📍 영향받는 시스템
Apache Camel: 4.10.0 ~ 4.10.7, 4.14.0 ~ 4.14.4, 4.15.0 ~ 4.17.x
⚔️ 공격 벡터
LevelDB 데이터베이스 파일에 조작된 직렬화된 Java 객체를 주입하여 역직렬화 유도
🛡️ 대응 방법
Apache Camel을 4.18.0, 4.10.9 또는 4.14.5 이상의 최신 보안 버전으로 업그레이드하십시오.
🔧 검증 코드
명령어 결과에 취약한 버전 범위가 출력되면 해당 버전이 설치되어 있는 상태입니다.
mvn dependency:list | grep 'camel-core' | grep -E '4.10.[0-7]|4.14.[0-4]|4.15\.[0-9]+'