JVNDB-2026-026245 | |
Zephyr ProjectのZephyrにおける有効期限後のメモリの解放の欠如に関する脆弱性 | |
| 概要 | |
kernel/poll.cのCONFIG_USERSPACE syscall verifierであるz_vrfy_k_poll()は、z_thread_malloc()を介してユーザーが提供したk_poll_event[]のカーネル側コピーを割り当て、その後各イベントのオブジェクトハンドルを検証します。この修正前は、検証がループ内でインラインのK_OOPS(K_SYSCALL_OBJ(...))を使用しており、呼び出しスレッドを終了させる際にevents_copyを解放しませんでした。ユーザースレッドは、num_events >= 1で偽造されたオブジェクトハンドルを渡すことで割り当てをリークさせることができます。新しく生成されたユーザースレッドは親のresource_poolを継承するため(kernel/thread.c)、攻撃者は犠牲スレッドを生成してこのリークを繰り返し、共有カーネルヒープが枯渇するまで続けます。ヒープが枯渇すると、そのプールからの正当なカーネル割り当て(k_queueのノード割り当て、k_msgqのバッファ、将来的なk_poll呼び出しなど)が失敗し、システムレベルのサービス拒否(DoS)が引き起こされます。この修正では、各インラインのK_OOPSを条件付きのgoto oops_freeに置き換え、スレッドが終了する前にバッファを解放するようにしました。影響を受けるのは、k_pollがユーザーモードに初めて公開されたv1.12.0からv4.4.1までのZephyrのリリースです。 | |
| CVSS による深刻度 (CVSS とは?) | |
|
CVSS v3 による深刻度
基本値: 6.5 (警告) [その他]
| |
| 影響を受けるシステム | |
|
| |
Zephyr Project | |
本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。 | |
| 想定される影響 | |
・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 | |
| 対策 | |
ベンダ情報を参照して適切な対策を実施してください。 | |
| ベンダ情報 | |
GitHub | |
| CWEによる脆弱性タイプ一覧 CWEとは? | |
| |
| 共通脆弱性識別子(CVE) CVEとは? | |
|
| |
| 参考情報 | |
| |
| 更新履歴 | |
|
| 公表日 | 2026/07/21 |
| 登録日 | 2026/07/31 |
| 最終更新日 | 2026/07/31 |



