vs gauge
区分
JVN番号
タイトル
JVN
深刻度
最終更新日
CVE番号
New
JVNDB-2026-021976

Zephyr ProjectのZephyrにおける解放済みメモリの使用に関する脆弱性

7.5
2026/07/02 11:02
CVE-2026-10638
JVNDB-2026-021976
Zephyr ProjectのZephyrにおける解放済みメモリの使用に関する脆弱性
概要
subsys/net/ip/icmpv6.c は、パケットが net_try_send_data() に渡された後に net_pkt からネットワークインターフェースを読み取ります。icmpv6_handle_echo_request() と net_icmpv6_send_error() においては、送信後の統計更新のために、直前に送信されたパケットに対して net_pkt_iface(reply) や net_pkt_iface(pkt) を呼び出します。送信経路(net_try_send_data - net_if_tx)では、パケットをメモリスラブに戻し参照を解除して返却前に解放する可能性があります。これは、TXキューが設定されていない場合(CONFIG_NET_TC_TX_COUNT == 0)には RXスレッドで同期的に行われ、設定されている場合はドライバーやL2が非同期的に既に解放している可能性があります。したがって net_pkt_iface() は、解放済み(おそらく再利用済み)の net_pkt を逆参照し、CONFIG_NET_STATISTICS_PER_INTERFACE が有効な場合には古い iface ポインタがさらに逆参照されて更新(iface-stats.icmp.sent++)されます。これにより、Use-After-Free の読み取りが攻撃者が制御可能なポインタへの書き込みになります。コアスタックではこの危険性を net_core.c にて「その呼び出し後に pkt を使用してはならない」と既にドキュメント化しており、送信前に iface をキャッシュしていますが、ICMPv6 呼び出し元はこれを行っていませんでした。認証されていないリモート攻撃者は、ICMPv6 エコーリクエスト(ping)や ICMPv6 エラーを引き起こす IPv6 パケット(例:不明な次ヘッダ、フラグメント再構成タイムアウト、宛先到達不能)を送信するだけで、この脆弱性を引き起こすことができます。これによりクラッシュによるサービス拒否やメモリ破損が発生する可能性があります。影響を受けるのは CONFIG_NET_NATIVE_IPV6 を有効にした Zephyr ネットワーキングで、おおむね v4.2.0 から v4.4.0 までのバージョンです。修正は送信前にインターフェースポインタをキャッシュし、統計の更新にこれを使用するようにしたもので、兄弟コミット 86e21665d46 は ICMPv4 の同様のバグを修正しています。
想定される影響と対策
・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 ・当該ソフトウェアが扱う情報について、書き換えは発生しません。 ・当該ソフトウェアが完全に停止する可能性があります。
リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。
JVN情報 ※( )内はCVSS v2の値
深刻度 7.5
CVECVE-2026-10638
公表日2026/06/16 00:00
登録日2026/07/02 11:02
更新日2026/07/02 11:02
CVSS v3情報
全ての情報を閲覧するにはユーザー登録(無料)またはログインが必要です。