製品・ソフトウェアに関する情報
LinuxのLinux Kernelにおける境界外読み取りに関する脆弱性
Title LinuxのLinux Kernelにおける境界外読み取りに関する脆弱性
Summary

Linuxカーネルにおいて、以下の脆弱性が修正されました:netfilterのnft_set_pipapoサブシステム内に存在したpipapo_drop()関数におけるスタックの境界外読み取りの問題です。pipapo_drop()はすべての反復でrulemap[i + 1].nをpipapo_unmap()のto_offset引数として渡していました。最後の反復(i == m-field_count - 1)も含まれていました。これにより、スタック上に確保されたrulemap配列(rulemap[NFT_PIPAPO_MAX_FIELDS]として宣言され、NFT_PIPAPO_MAX_FIELDSは16です)を1要素分超えて読み込むことが発生していました。pipapo_unmap()はis_lastがtrueの場合、to_offset値を使用せずに早期リターンしますが、引数は関数本体が実行される前に呼び出し元で評価されるため、本物のスタックの境界外読み取りとなっており、KASANによって検出されました。具体的には、BUG: KASAN: stack-out-of-bounds in pipapo_drop+0x50c/0x57c [nf_tables]、サイズ4の読み取りがアドレスffff8000810e71a4で発生しました。このフレームには1つのオブジェクトがあり、その範囲は[32, 160)の'rulemap'です。バグのあるアドレスはオフセット164で、rulemap配列の末尾を正確に4バイト超えています。問題を解決するために、最終反復時にはrulemap[i + 1].nの代わりに0を渡すことで境界外読み取りを回避しました。

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

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

Publication Date May 8, 2026, midnight
Registration Date May 25, 2026, 10:20 a.m.
Last Update May 25, 2026, 10:20 a.m.
CVSS3.0 : 重要
Score 7.1
Vector CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
Affected System
Linux
Linux Kernel 5.11 以上 5.15.203 未満
Linux Kernel 5.16 以上 6.1.167 未満
Linux Kernel 5.6 以上 5.10.253 未満
Linux Kernel 6.13 以上 6.18.19 未満
Linux Kernel 6.19 以上 6.19.9 未満
Linux Kernel 6.2 以上 6.6.130 未満
Linux Kernel 6.7 以上 6.12.78 未満
Linux Kernel 7.0
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
Change Log
No Changed Details Date of change
1 [2026年05月25日]
  掲載
May 25, 2026, 10:20 a.m.

NVD Vulnerability Information
CVE-2026-43453
Summary

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

netfilter: nft_set_pipapo: fix stack out-of-bounds read in pipapo_drop()

pipapo_drop() passes rulemap[i + 1].n to pipapo_unmap() as the
to_offset argument on every iteration, including the last one where
i == m->field_count - 1. This reads one element past the end of the
stack-allocated rulemap array (declared as rulemap[NFT_PIPAPO_MAX_FIELDS]
with NFT_PIPAPO_MAX_FIELDS == 16).

Although pipapo_unmap() returns early when is_last is true without
using the to_offset value, the argument is evaluated at the call site
before the function body executes, making this a genuine out-of-bounds
stack read confirmed by KASAN:

BUG: KASAN: stack-out-of-bounds in pipapo_drop+0x50c/0x57c [nf_tables]
Read of size 4 at addr ffff8000810e71a4

This frame has 1 object:
[32, 160) 'rulemap'

The buggy address is at offset 164 -- exactly 4 bytes past the end
of the rulemap array.

Pass 0 instead of rulemap[i + 1].n on the last iteration to avoid
the out-of-bounds read.

Publication Date May 9, 2026, 12:16 a.m.
Registration Date May 9, 2026, 4:15 a.m.
Last Update May 12, 2026, 11:10 p.m.
Related information, measures and tools
Common Vulnerabilities List