#1704·jsoncpp

OurReader::readValue 中的无法控制的深度递归导致服务拒绝 (超出堆栈限制)

作者: eglonnnn创建于 2026年7月4日更新于 2026年7月4日

**描述漏洞** jsoncpp 1.9.6 中存在一个拒绝服务漏洞。当 `OurReader::readValue()` 解析一个深度嵌套的 JSON 数组时,`readValue()` 和 `readArray()` 之间的递归调用超出了默认的 `stackLimit` (1000),导致 `Json::RuntimeError` 发生,从而引发 `std::terminate()` 和进程退出。崩溃发生在 `json_reader.cpp:1041:5` 中的 `Json::OurReader::readValue()` 中,由一个包含约 1100 个连续 `[]` 字符的恶意输入引发。

内容来源: open-source-parsers/jsoncpp