Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
php2shell-scanner — 针对 CVE-2026-109618 / CVE-2026-109619(PHP 核心 RCE)的非破坏性扫描器。通过 crt.sh + subfinder 进行子域名侦察,稳健的 banner 抓取,基于版本的检测。 | Kitploit
工具/GitHubGitHub/joasasantos/php2shell-scanner
OSINT (开源情报)侦察漏洞扫描器Web漏洞扫描器网络映射漏洞分析信息收集Web安全渗透测试子域名枚举
GitHubjoasasantos/php2shell-scanner

php2shell-scanner

6923191天前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

针对 CVE-2026-109618 / CVE-2026-109619(PHP 核心 RCE)的非破坏性扫描器。通过 crt.sh + subfinder 进行子域名侦察,稳健的 banner 抓取,基于版本的检测。

查看仓库

php2shell-scanner

针对 CVE-2026-109618(通过 OOM 损坏实现 RCE)和 CVE-2026-109619(通过过期的全局状态实现 RCE)的非破坏性扫描器(可选启用探测)——这些是 PHP 核心漏洞,已在 8.2.35 / 8.3.36 / 8.4.27 / 8.5.12 中修复。

✅ 已对照官方 php-src 安全公告验证(2026-10-21,严重)。 下方的 CVE ID 和修复版本表与上游完全一致。

  • CVE-2026-109618 — GHSA-w8hw-w9fx-j79w
  • CVE-2026-109619 — GHSA-6wmf-4rv5-p3rp

受影响 / 已修复版本

分支受影响已修复
8.2< 8.2.358.2.35
8.3< 8.3.368.3.36
8.4< 8.4.278.4.27
8.5< 8.5.128.5.12
< 8.2已停止支持(EOL)——无上游补丁检查发行版/OSV 向后移植

策略

模式功能
LOCAL通过 php -r 获取精确的运行时版本、SAPI、memory_limit、post_max_size
REMOTE通过 X-Powered-By / Server 响应头和暴露的 phpinfo() 进行版本指纹识别
PRESENCE无版本信息的 PHP 检测(PHPSESSID、.php 引用、重定向)
BANNER稳健的原始套接字 banner 抓取——HEAD/GET/OPTIONS + 畸形探测,http/https,错误页面泄露
RECON通过 crt.sh(证书透明度)进行子域名枚举,并以 subfinder 作为回退/合并,然后对解析出的主机进行扇出扫描
PROBE(可选启用) 发送大型 multipart 请求以观察 worker 不稳定——可能导致 DoS

安装

git clone https://github.com/JoasASantos/php2shell-scanner.git
cd php2shell-scanner
# stdlib only — no pip deps.
# Optional recon fallback: ProjectDiscovery subfinder
#   brew install subfinder   (or: go install github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest)

用法

# Local runtime check
python3 php2shell_scan.py --local

# Single remote target, look for exposed phpinfo()
python3 php2shell_scan.py https://example.com --phpinfo-paths

# Subdomain recon (crt.sh + subfinder) then scan, 10 threads, JSON out
python3 php2shell_scan.py example.com --recon --threads 10 -o out.json

# Recon only, no scanning
python3 php2shell_scan.py example.com --recon-only

# Target list + forced robust banner grab
python3 php2shell_scan.py -f targets.txt --banner

# OPT-IN load probe (authorized use only — DoS risk)
python3 php2shell_scan.py https://example.com --probe --probe-count 5

参数

参数含义
--local通过 php 二进制进行本地扫描
--recon将每个域名扩展为子域名(crt.sh + subfinder),然后扫描可解析的主机
--recon-only仅枚举子域名,不进行扫描
--banner对每个目标强制使用稳健的原始套接字 banner 抓取
--phpinfo-paths探测常见的暴露 phpinfo() 路径
--deep-version额外的版本识别技术:PHP 彩蛋 + 版本泄露文件(composer.json、.env 等)
--origin-scan穿透 Cloudflare/WAF 直达 PHP 源站——携带真实 Host 头直接向 IP 发起请求
--shodan-key用于源站情报的 Shodan API 密钥(或环境变量 SHODAN_API_KEY);隐含启用 --origin-scan
--censys-id / --censys-secretCensys API 凭据(或环境变量 CENSYS_API_ID / CENSYS_API_SECRET);隐含启用 --origin-scan
--probe多部分负载探测——存在 DoS 风险,仅限授权使用
--probe-count N探测请求数量(默认 5)
--threads N / --timeout N并发数 / 单请求超时
--insecure不验证 TLS
-o FILE / --csv FILE保存 JSON / CSV 报告

被动信息增强

除版本检查外,每个目标还会通过被动信号(来自正常响应)进行增强,以细化判定并减少误报:

  • SAPI / worker 模型——持久化 worker(fpm、mod_php)会复用请求状态 → 易受 CVE-2026-109619 影响;纯 cgi 则影响小得多。
  • CDN / WAF / 代理(Cloudflare、Akamai、Fastly、Sucuri 等)——banner 可能来自边缘节点而非源站 → 降低置信度。
  • 发行版构建(ubuntu、+deb、.el8 等)——向后移植补丁可能在不提升版本号的情况下修复漏洞 → 降低置信度,并提示“请核对变更日志”。
  • 深度 phpinfo(当暴露时)——Server API、post_max_size / max_input_vars(CVE-2026-109618 的 OOM 攻击面)、disable_functions。

更多版本识别技术(--deep-version)

当 banner 中无版本信息时:PHP 彩蛋(?=PHPE9568F34-... → 在 expose_php=On 时返回 GIF/credits)以及版本泄露文件(composer.json、.env 等;.env 中的 PHP_VERSION 为精确版本,而 "php": ">=8.2" 这类约束仅能缩小分支范围)。

源站 / WAF 绕过(--origin-scan)

CDN 会隐藏源站,因此仅读取响应头只能看到边缘节点。--origin-scan 会:

  1. 解析 apex、www、未代理的前缀(origin.*、cpanel.*、mail.* 等)以及侦察得到的子域名;
  2. 剔除位于 Cloudflare / Imperva / Sucuri 边缘网段内的 IP(IPv4 + IPv6);
  3. 携带真实 Host + SNI 直接请求每个剩余的源站 IP,直接从源站读取 Server / X-Powered-By / 错误页面。

这是对已暴露 IP 的直接请求。仅限授权目标使用。

凭据情报可补充 DNS 从未暴露的 IP,以及来自已索引 banner 的 PHP 版本(标记为情报——可能已过时):

  • --shodan-key / 环境变量 SHODAN_API_KEY——按 hostname:<domain> 查询主机。
  • --censys-id + --censys-secret / 环境变量 CENSYS_API_ID + CENSYS_API_SECRET——按 TLS 证书 / DNS 名称查询主机。
  • 任何凭据都会自动启用 --origin-scan。
export SHODAN_API_KEY=xxx CENSYS_API_ID=xxx CENSYS_API_SECRET=xxx
python3 php2shell_scan.py hackersec.com --origin-scan

置信度等级

置信度含义
HIGH版本来自暴露的 phpinfo() 或 PHP 错误页面
MEDIUM版本来自 HTTP 响应头(expose_php=On)
LOW仅为推断,或位于代理之后,或可能适用发行版向后移植补丁

合并输出按严重程度对目标分组,将 VULNERABLE 按置信度排序(HIGH 优先),并标记 LOW/MEDIUM 结果以便在报告前重新核查。

检测逻辑

按分支将版本与 FIXED 表进行比较:

  • 受支持分支上 < fixed → VULNERABLE
  • >= fixed → PATCHED
  • < 8.2(EOL)→ VULNERABLE_EOL(无上游补丁;请检查发行版/OSV 向后移植补丁)
  • 分支高于公告范围或无版本 → UNKNOWN / SUSPECTED

授权

仅对您拥有或明确获准测试的资产运行。--probe 模式可能会干扰脆弱的工作进程。您需对自己的使用行为负责。

许可证

MIT

下载工具