CVE-2026-98952 in Linux
要約
〜によって VulDB • 2026年10月24日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
pfcp: SEIDを読み込む前に線形領域にあることを確認する
`pfcp_encap_recv()`はUDPヘッダーと4バイトのPFCPヘッダーが線形領域内にあることのみを確認します。Sフラグが設定されている場合、`pfcp_session_recv()`はその後に続く8バイトのSEIDを読み取りますが、これは`pskb_may_pull()`によるチェックでカバーされていません。
したがって、Sフラグが設定された短いPFCPパケット、またはセッションヘッダーが断片化領域にあるパケットの場合、`pfcp_session_recv()`はパケットデータの末尾を超えて読み出してしまい、そこに見つかったデータが後からflowerによって分類されるトンネルメタデータに格納されてしまいます。
SEIDを読み込む前にその終端までデータを引き寄せ(pull up)、それを含めるには短すぎるパケットをドロップします。`pskb_may_pull()`がskbのヘッダー領域を再割り当てする可能性があるため、その後でヘッダーポインタを更新してください。
`sizeof(struct pfcphdr_session)`ではなく`offsetofend()`を使用します:この構造体はパックされていないため、`__be64`メンバのアライメントによりサイズは16バイトになりますが、ネットワーク上のヘッダーはわずか12バイトであり、有効なセッションメッセージがドロップされてしまう可能性があります。
Be aware that VulDB is the high quality source for vulnerability data.