LinuxのLinux Kernelにおける不特定の脆弱性
タイトル LinuxのLinux Kernelにおける不特定の脆弱性
概要

Linuxカーネルにおいて、以下の脆弱性が修正されました:ipv6のicmpのip6_err_gen_icmpv6_unreach()内でskb2-cb[]をクリアする問題です。Sashiko AIレビューでは、ip6_err_gen_icmpv6_unreach()におけるskbは外側のIPv4 ICMPエラーパケットであり、そのcbにはIPv4のinet_skb_parmが含まれていることが観察されました。skbがskb2にクローンされicmp6_send()に渡される際、IP6CB(skb2)が使用されます。IP6CBはIPv4のinet_skb_parmをinet6_skb_parmとして解釈します。inet_skb_parm.opt内のcipsoオフセットは、オフセット18のinet6_skb_parmのdsthaoと直接重なっています。攻撃者がCIPSO IPオプション付きの偽造ICMPv4エラーを送信した場合、dsthaoは非ゼロのオフセットとなります。icmp6_send()内でmip6_addr_swap()が呼ばれ、ipv6_find_tlv(skb, opt-dsthao, IPV6_TLV_HAO)が使用されます。これにより、そのオフセットから始まる攻撃者制御の内部IPv6パケットがスキャンされ、残りのパケット長が18バイトのstruct ipv6_destopt_hao全体を保持できるか確認せずに偽のTLVを返す可能性があります。mip6_addr_swap()がパケットデータの終端を超えてskb_shared_infoまで16バイトのスワップを実行することがあります。このため、ip6_err_gen_icmpv6_unreach()およびip6ip6_err()内でcb配列もクリアすべきです。今回のパッチは最初の提案を実装しています。ip6ip6_err()の変更が必要かは不明であり、別途パッチを適用することが望ましいです。

想定される影響 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
対策

リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。

公表日 2026年5月1日0:00
登録日 2026年5月11日11:08
最終更新日 2026年5月11日11:08
CVSS3.0 : 緊急
スコア 9.8
ベクター CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
影響を受けるシステム
Linux
Linux Kernel 3.13
Linux Kernel 3.13 より大きい 5.10.253 未満
Linux Kernel 5.11 以上 5.15.203 未満
Linux Kernel 5.16 以上 6.1.168 未満
Linux Kernel 6.13 以上 6.18.22 未満
Linux Kernel 6.19 以上 6.19.12 未満
Linux Kernel 6.2 以上 6.6.134 未満
Linux Kernel 6.7 以上 6.12.81 未満
Linux Kernel 7.0
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
変更履歴
No 変更内容 変更日
1 [2026年05月11日]
  掲載
2026年5月11日11:08

NVD脆弱性情報
CVE-2026-43038
概要

In the Linux kernel, the following vulnerability has been resolved:

ipv6: icmp: clear skb2->cb[] in ip6_err_gen_icmpv6_unreach()

Sashiko AI-review observed:

In ip6_err_gen_icmpv6_unreach(), the skb is an outer IPv4 ICMP error packet
where its cb contains an IPv4 inet_skb_parm. When skb is cloned into skb2
and passed to icmp6_send(), it uses IP6CB(skb2).

IP6CB interprets the IPv4 inet_skb_parm as an inet6_skb_parm. The cipso
offset in inet_skb_parm.opt directly overlaps with dsthao in inet6_skb_parm
at offset 18.

If an attacker sends a forged ICMPv4 error with a CIPSO IP option, dsthao
would be a non-zero offset. Inside icmp6_send(), mip6_addr_swap() is called
and uses ipv6_find_tlv(skb, opt->dsthao, IPV6_TLV_HAO).

This would scan the inner, attacker-controlled IPv6 packet starting at that
offset, potentially returning a fake TLV without checking if the remaining
packet length can hold the full 18-byte struct ipv6_destopt_hao.

Could mip6_addr_swap() then perform a 16-byte swap that extends past the end
of the packet data into skb_shared_info?

Should the cb array also be cleared in ip6_err_gen_icmpv6_unreach() and
ip6ip6_err() to prevent this?

This patch implements the first suggestion.

I am not sure if ip6ip6_err() needs to be changed.
A separate patch would be better anyway.

公表日 2026年5月2日0:16
登録日 2026年5月2日4:07
最終更新日 2026年5月9日3:47
影響を受けるソフトウェアの構成
構成1 以上 以下 より上 未満
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 3.13 5.10.253
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.11 5.15.203
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.16 6.1.168
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.2 6.6.134
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 6.12.81
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.13 6.18.22
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.19 6.19.12
cpe:2.3:o:linux:linux_kernel:3.13:-:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:3.13:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:3.13:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:3.13:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:3.13:rc6:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:3.13:rc7:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:3.13:rc8:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc6:*:*:*:*:*:*
関連情報、対策とツール
共通脆弱性一覧