CVE-2026-74586
sctp: ピアを削除する際に new_transport をクリアする
- 公開済み
- 2026/08/22
- 更新済み
- 2026/08/25
- CNA の割り当て
- Linux
- 観察された証拠
- 2026/09/09
プライマリ CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H低 · 今後 30 日間
- パーセンタイル
- 41.7%
- モデルの日付
- 2026/09/21
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
Linuxカーネルにおいて、以下の脆弱性が解決されました: sctp: ピアを削除する際にnew_transportをクリアする sctp_process_asconf_param()は、新しく追加されたピアトランスポートをasoc->new_transportに格納します。ASCONFチャンク内のすべてのパラメータが処理された後、sctp_sf_do_asconf()はこのポインタを使用して新しいトランスポートにHEARTBEATを送信します。リモートSCTPピアからの認証済みASCONFは、同じチャンク内のワイルドカードDEL-IPパラメータを使用して、トランスポートを追加してから再度削除することができます。ワイルドカード削除はASCONFが到着したトランスポートを保持しますが、sctp_assoc_del_nonprimary_peers()を通じて新しく追加されたトランスポートを削除します。この削除ではasoc->new_transportがクリアされず、削除されたトランスポートを指したままになります。その後、sctp_sf_do_asconf()は、トランスポート参照を保持せずに、chunk->transportが削除されたトランスポートを指すHEARTBEATを作成します。ローカルアドレス置換中に、src_out_of_asoc_okはこのHEARTBEATをcontrol_chunk_listに保持します。トランスポートがRCUによって解放された後、置換アドレスに対する成功したASCONF_ACKがキューされたHEARTBEATを解放し、sctp_outq_select_transport()が解放されたトランスポートの状態を読み取ります。この問題はSCTPオブジェクトの静的監査中に発見されました。認証済みピアを使用した場合、再現プログラムはKASAN対応のnetdev/mainカーネル上で、パッチ未適用の2回の実行のうち2回で同じKASANレポートをトリガーしました: BUG: KASAN: slab-use-after-free in sctp_outq_select_transport Read of size 4 at addr ffff88800b9bd95c by task python3/197 Call Trace: sctp_outq_select_transport+0x549/0x8b0 [sctp] sctp_outq_flush+0x306/0x2c60 [sctp] sctp_transport_immediate_rtx+0xaf/0x260 [sctp] sctp_process_asconf_ack+0xa48/0xf70 [sctp] Allocated by task 197: sctp_transport_new+0x68/0x650 [sctp] sctp_assoc_add_peer+0x258/0x12a0 [sctp] sctp_process_asconf+0x5e9/0x1090 [sctp] Last potentially related work creation: __call_rcu_common.constprop.0+0x77/0xb70 sctp_assoc_del_nonprimary_peers+0x7c/0xd0 [sctp] sctp_process_asconf+0xd9c/0x1090 [sctp] 最初の不正アクセスは、net/sctp/outqueue.c:833におけるtransport->stateの4バイト読み取りでした。同じ再現プログラムは、この変更により、KASANレポートやoopsなしで、完全な認証済みASCONFおよびローカルアドレス置換シーケンスを完了しました。HEARTBEATの作成に使用される前に、そのピアが削除された際にnew_transportをクリアします。
ソース
1# CVE-2026-74586 の非特権概念実証コード LinuxカーネルのSCTP ASCONF use-after-freeに対する非特権の概念実証コードです。rawパケットトリガー、信頼性メトリクス、および構造体オフセットやスプレープリミティブを含む詳細な武器化分析を提供します。
責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。