
PHPUnit CVE-2017-9841 Scanner in Go 깔끔하고 바로 사용 가능
Go로 작성된 빠르고 멀티스레드 스캐너로, PHPUnit에서 노출되고 취약한 eval-stdin.php 엔드포인트를 탐지합니다 (CVE-2017-9841). 병렬 실행과 자동 프로토콜 탐지를 통해 여러 도메인을 스캔할 수 있습니다.

CVE-2017-9841은 PHPUnit에서
eval-stdin.php스크립트가 공개적으로 노출되어 발생하는 심각한 원격 코드 실행(RCE) 취약점입니다. 공격자는 이 엔드포인트에 조작된 입력을 보내 서버에서 임의의 PHP 코드를 실행할 수 있습니다.
영향을 받는 버전:
일반적인 취약 경로:
/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php
eval-stdin.php 파일 탐지-t 플래그를 통한 고속 멀티스레드 스캔go run PHPUnit_GoScan.go -l list.txt -t 20
또는 미리 컴파일된 바이너리 사용:
chmod +x PHPUnit_GoScan_amd64_linux
./PHPUnit_GoScan_amd64_linux -l list.txt -t 20
PHPUnit_GoScan_amd64_windows.exe -l list.txt -t 20
| 플래그 | 설명 |
|---|---|
-l | 한 줄에 하나의 도메인이 있는 입력 파일 경로 |
-t | 동시 스레드 수 (기본값: 10, 권장: 20) |
list.txt도메인 목록 예시:
example.com
http://target.org
https://vulnerable.site/
testdomain.net
스캐너는 다음과 같은 일반적인 취약 경로를 확인합니다:
/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php
/phpunit/phpunit/src/Util/PHP/eval-stdin.php
/phpunit/src/Util/PHP/eval-stdin.php
Go 소스 파일의 PHPUnit_PayloadList 섹션에서 이를 사용자 정의할 수 있습니다.
스캔 완료 후 결과는 다음 파일에 기록됩니다:
| 파일 이름 | 설명 |
|---|---|
Domain_Online.txt | HTTP 200으로 응답한 도메인 |
PHPUnit_Injected.txt | CVE-2017-9841에 취약한 것으로 확인된 도메인 |
[1/100] [Domain Online] ==> https://target.com
[1/100] [PHPUnit == PWNED] ==> https://target.com/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php
[5/100] [Domain Offline] ==> http://dead.site
[6/100] [Fail Injection] ==> https://clean.site
| 플랫폼 | 파일 이름 |
|---|---|
| Linux | PHPUnit_GoScan_amd64_linux |
| Windows | PHPUnit_GoScan_amd64_windows.exe |
🛠 Linux: 실행 전에
chmod +x PHPUnit_GoScan_amd64_linux를 실행하세요.
이 도구는 교육 및 허가된 보안 테스트용으로만 사용하십시오. 소유하지 않거나 테스트 허가가 없는 도메인을 스캔하지 마십시오. 허가되지 않은 사용은 불법일 수 있으며 관련 법률에 따라 처벌받을 수 있습니다.
DRCrypter.ru 제작
텔레그램: @drcrypterd0tru
GitHub: @drcrypterdotru
MIT 라이선스 — 자유롭게 사용, 수정 및 배포할 수 있습니다. 링크: