| タイトル | jqlangのjqにおける境界外書き込みに関する脆弱性 |
|---|---|
| 概要 | jqはコマンドラインで使用するJSONプロセッサです。バージョン1.8.2以前のjqでは、`jq --rawfile`が処理済みのオーバーサイズ文字列エラーを無効な再利用状態に変え、アサーションが無効なビルドにおいて実際のヒープの境界外書き込みを引き起こす可能性があります。jv_load_file(raw=1)が攻撃者が制御するファイルを読み込む際、ファイルのチャンクを同じjv文字列アキュムレータに繰り返し追加します。jv_string_append_buf()がjv_invalid_with_msg("文字列が長すぎます")を返した後もraw-fileループは停止しません。ファイルに少なくとも1バイトでも残っている場合、次のループ反復で既に無効なオブジェクトに新しいチャンクが追加されます。アサーションが有効な場合はjvp_string_ptr()で中断しますが、アサーションが無効な場合は無効なオブジェクトが文字列オブジェクトとして解釈され、ASanはヒープバッファオーバーフローを報告します。この脆弱性はバージョン1.8.2で修正されました。 |
| 想定される影響 | ・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 ・当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 ・当該ソフトウェアが完全に停止する可能性があります。 |
| 対策 | ベンダ情報を参照して適切な対策を実施してください。 |
| 公表日 | 2026年6月25日0:00 |
| 登録日 | 2026年6月29日11:13 |
| 最終更新日 | 2026年6月29日11:13 |
| CVSS3.0 : 重要 | |
| スコア | 7.1 |
|---|---|
| ベクター | CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H |
| jqlang |
| jq 1.8.2 未満 |
| No | 変更内容 | 変更日 |
|---|---|---|
| 1 | [2026年06月29日] 掲載 |
2026年6月29日11:13 |
| 概要 | jq is a command-line JSON processor. Prior to 1.8.2,` jq --rawfile` can turn a handled oversized-string error into invalid-state reuse and a real heap out-of-bounds write in assertion-disabled builds. When jv_load_file(raw=1) reads an attacker-controlled file, it repeatedly appends file chunks to the same jv string accumulator. Once jv_string_append_buf() returns jv_invalid_with_msg("String too long"), the raw-file loop does not stop. If the file contains at least one more byte, the next loop iteration appends a new chunk to an object that is already invalid. With assertions enabled this aborts in jvp_string_ptr(). With assertions disabled, the invalid object is interpreted as a string object and ASan reports heap-buffer-overflow. This vulnerability is fixed in 1.8.2. |
|---|---|
| 公表日 | 2026年6月26日3:16 |
| 登録日 | 2026年6月27日4:29 |
| 最終更新日 | 2026年6月27日3:53 |
| 構成1 | 以上 | 以下 | より上 | 未満 | |
| cpe:2.3:a:jqlang:jq:*:*:*:*:*:*:*:* | 1.8.2 | ||||