一个用 Go 编写的高速多线程扫描器,用于检测 PHPUnit 中暴露且易受攻击的 eval-stdin.php 端点(CVE-2017-9841)。支持跨多个域并行扫描,并自动检测协议。

CVE-2017-9841 是 PHPUnit 中的一个严重远程代码执行 (RCE) 漏洞,由
eval-stdin.php脚本的公开暴露引起。
攻击者可通过向该端点发送精心构造的输入,在服务器上执行任意 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 开发
Telegram:@drcrypterd0tru
GitHub:@drcrypterdotru
MIT 许可证 — 可自由使用、修改和分发。
链接: