cJSON(ANSI C製の軽量JSONパーサ)に、配列インデックスの検証不備が原因で境界外アクセス(Out-of-Bounds, OOB)や
クラッシュを引き起こすクリティカルな欠陥が見つかりました。脆弱性はCVE-2025-57052(CVSS 9.8)として公開され、PoCも提示されています。
対象バージョン
本件は 修正コミット(PR #957 / 74e1ff4)適用前の cJSON に影響します。
具体的には、最新タグ v1.7.18 を含む既存の全タグ付きリリースおよび修正前の main ブランチが該当します。なお、影響は cJSON_Utils.c をビルドに含め、decode_array_index_from_pointer を経由して配列インデックスを文字列から解釈している構成に限定されます(cJSON.c/h のみを同梱し、Utilsを使用していないプロジェクトは原則影響を受けません)。
悪用シナリオとリスク
攻撃者は、アプリ側の検証をすり抜ける細工JSON Pointerを投入し、意図せぬ配列位置を参照させることで、
-
サービスクラッシュ(DoS)の誘発、
-
アプリのガードロジックとcJSONの解釈差を突くチェック回避、
-
実装やコンパイラ最適化との組み合わせ次第での機密メモリ露見の可能性、
といった影響を与えます。
影響範囲
cJSON 自体をリンクしているだけではなく、cJSON_Utils を通じて配列インデックスを文字列から解釈している場面が該当します。Web API、組込み/IoT、デスクトップ/サーバアプリなど、外部入力に由来するJSON Pointerを受け取る設計のソフトウェアは特に注意が必要です。





-200x200.png)


