
Apache ActiveMQ OpenWire 역직렬화 RCE 취약점 기술 분석
Apache ActiveMQ CVE-2023-46604의 원인, 코드 경로, 패치 포인트, 재현 결과를 정리한 기술 분석 저장소입니다.
본 문서는 공개된 취약점 CVE-2023-46604에 대한 기술 분석 및 방어 관점의 학습 자료입니다.
모든 실험은 승인된 폐쇄형 테스트 환경에서만 수행되었으며, 비인가 시스템에 대한 적용이나 재현은 불법일 수 있습니다.
본 문서의 내용은 취약점 이해, 패치 검증, 탐지 및 대응 역량 강화를 위한 목적으로만 제공됩니다.
CVE-2023-46604는 Apache ActiveMQ의 OpenWire 역직렬화 처리 과정에서 발생하는 원격 코드 실행 취약점이다. 핵심 문제는 BaseDataStreamMarshaller.createThrowable()가 외부 입력으로 전달된 클래스명을 충분히 검증하지 않은 채 리플렉션으로 인스턴스화한다는 점이다.
공격자는 이를 이용해 예외 객체 대신 다른 클래스를 생성하게 만들 수 있고, 그 과정에서 원격 XML 로드와 명령 실행이 이어질 수 있다.
Throwable 하위 타입 검증 부재ExceptionResponse -> createThrowable() -> 임의 클래스 생성상세 분석 보고서는 아래 문서에서 확인할 수 있습니다.
.
|- README.md
|- docs/
| \- CVE-2023-46604_report.md
\- assets/
\- images...
createThrowable() 취약 지점 설명