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

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

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

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-79752 — CVE-2026-79752 披露包,涉及 CakePHP 5.2.13 中通过 FunctionsBuilder::cast 的 SQL 注入漏洞,包含一个 Python PoC 脚本和用于授权复现的 Docker 实验环境。 | Kitploit
工具/GitHubGitHub/abraxas/cve-2026-79752
漏洞扫描器漏洞分析漏洞利用Web应用程序漏洞利用Web安全渗透测试学习与教育数据库安全实验室与实践
GitHubabraxas/cve-2026-79752

CVE-2026-79752

CVE-2026-79752 披露包,涉及 CakePHP 5.2.13 中通过 FunctionsBuilder::cast 的 SQL 注入漏洞,包含一个 Python PoC 脚本和用于授权复现的 Docker 实验环境。

4316天前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
查看仓库
分享

Abraxas Labs - CVE-2026-79752

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  CVE-2026-79752

技术分析文章:https://abraxaslabs.tech/research/CVE-2026-79752

CVE-2026-79752

CakePHP 5.2.13 - cakephp

我是 @abraxas_null。回环实验环境。客户端为 CVE-2026-79752-Abraxas-Labs.py。

CAST AS 字面量。FunctionsBuilder::cast(以及 extract / datePart / dateAdd)将调用方传入的 dataType / part / unit 作为未转义的结构拼接进 SQL。实验环境在 sqlite 上将 GET 参数 /?type= 传入 cast('body', $_GET['type'])。与 WordPress 无关。是 CVE-2026-77635(jsonValue / Postgres)的同类问题。已在 5.2.14、5.3.7、5.1.9、4.6.5、4.5.12 中修复。

CVECVE-2026-79752 · CVE.org
CWECWE-89
CVSS严重:9.2 CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
产品CakePHP
受影响版本5.2.x 至 5.2.13(另含 4.5.x < 4.5.12、4.6.x < 4.6.5、5.1.x < 5.1.9、5.3.x < 5.3.7)
已修复版本5.2.14、5.3.7、5.1.9、4.6.5、4.5.12
认证无
许可证GNU Affero GPL v3.0
实验环境仅 127.0.0.1

攻击者能做什么

如果应用程序将请求数据传入 func()->cast(..., $type)(或其他三个方法),调用方就能闭合 CAST 并 UNION 任意内容。实验环境泄露了 notes.body。这是 CakePHP 查询构建器中的 SQL 注入,而非 Postgres jsonpath 中的注入。


我是如何发现的

GHSA 点名了四个方法。我阅读了 cast,然后构建了一个将 GET 参数传入该方法的 sqlite 应用。

默认 GET / 为 CAST(body AS INTEGER) 和 [{"v":0}]。这是产品正常工作的表现。注入 GET 必须同时在 sql= 中放入片段 并且 返回 POCWitness79752。

走过的弯路:composer 500,因为镜像跳过了 composer install;从 PHP 源码中 grep 出 witness;注入 GET 后 sql= 仍然只有 CAST(body AS INTEGER)。


实验环境

端口 8088。cakephp/database 5.2.13。实验应用位于 lab/lab-www。sqlite notes.body = POCWitness79752。

  • lab/Dockerfile
  • lab/docker-compose.yml
  • lab/lab-www/

目标 仅限 127.0.0.1:8088(或你所绑定的回环地址)。

cd lab
docker compose up --force-recreate
python3 ../CVE-2026-79752-Abraxas-Labs.py

见证:HTTP body 中的 POCWitness79752 以及 sql= 中显示注入片段,而不仅仅是 CAST(body AS INTEGER)。

毫无收获的失败方式:

  • 仅 CAST AS INTEGER / TEXT,sql= 中没有注入片段
  • composer 500
  • 反向 shell

修复方案

将 CakePHP 更新至 5.2.14(或 5.3.7 / 5.1.9 / 4.6.5 / 4.5.12)。针对已修补的构建重新运行 CVE-2026-79752-Abraxas-Labs.py:注入片段不得出现在 sql= 中。


参考资料

  • CVE-2026-79752 · NVD

  • CVE-2026-79752 · CVE.org

  • github.com/cakephp/cakephp/commit/3349584ca3a891afaff2dbc324d6b1c09fb880f0

  • github.com/cakephp/cakephp/commit/3f4d13ea4280067f3381ecf935a8bef5b7cdcc2e

  • github.com/cakephp/cakephp/commit/79e1d6bc6f3a50fa01805579076a02c77370c676

  • github.com/cakephp/cakephp/commit/8699d6f38e25fe46fcc24f2b698809948e71ad7d

  • github.com/cakephp/cakephp/commit/ab608711674ac662af7315c5cdf1e0fbe2000e45

  • github.com/cakephp/cakephp/pull/19520

  • github.com/cakephp/cakephp/pull/19528

  • github.com/cakephp/cakephp/releases/tag/4.5.12

  • github.com/cakephp/cakephp/releases/tag/4.6.5

  • github.com/cakephp/cakephp/releases/tag/5.1.9

  • github.com/cakephp/cakephp/releases/tag/5.2.14

  • github.com/cakephp/cakephp/releases/tag/5.3.7

  • github.com/cakephp/cakephp/security/advisories/GHSA-vjqc-q4mp-2rvf

  • github.com/CVEProject/cvelistV5/tree/main/cves/2026/79xxx/CVE-2026-79752.json

  • nvd.nist.gov/vuln/detail/CVE-2026-79752

  • github.com/advisories/GHSA-vjqc-q4mp-2rvf

  • github.com/cakephp/cakephp/releases/tag/5.1.8

  • Abraxas Labs: abraxaslabs.tech · github.com/abraxas · @abraxas_null


许可证

GNU Affero GPL v3.0。参见 LICENSE。


该客户端仅与回环地址通信。将其用于您不拥有的系统并未获得 Abraxas Labs 的授权。不提供任何担保。

abraxaslabs.tech · github.com/abraxas · @abraxas_null

下载工具