CVE-2026-90048 in Linux情報

要約

〜によって VulDB • 2026年09月16日

Linuxカーネルにおいて、以下の脆弱性が修正されました:

fs/ntfs3: ni_create_attr_list() におけるスラブアウトオブバウンズ書き込みの修正

ni_create_attr_list() は al_aligned(record_size) (== record_size) バイトの固定バッファを割り当てた後、プライマリ MFT レコードの各属性を走査し、属性ごとに ATTR_LIST_ENTRY を1つ書き込みます。カーソルは le_size(name_len) ずつ進められますが、バッファの終端に対するチェックはありません。合計サイズはループ終了後にのみ計算されます。

最小サイズのレジデント属性はディスク上で SIZEOF_RESIDENT (0x18 = 24) バイトを占めますが、名無しの属性はリスト内で le_size(0) (0x20 = 32) バイトに拡張されます。レコード内の属性数には上限がないため(mi_enum_attr() は任意の数の同種・名無し・最小サイズの属性を受け入れます)、そのような属性で詰め込まれた不正なレコードは record_size よりも大きなリストを生成し、ヒープバッファオーバーフローを引き起こします。

この脆弱性は、不正に作成されたループマウントされた NTFS イメージから到達可能です:ファイルを開き(例: setxattr を介して)属性を追加すると、ntfs_set_ea() -> ni_insert_resident() -> ni_insert_attr() -> ni_ins_attr_ext() -> ni_create_attr_list() の順で処理が実行されます。

BUG: KASAN: slab-out-of-bounds in ni_create_attr_list+0xc48/0x1058 Write of size 4 at addr ffff000008984c00 by task setfattr/345 ni_create_attr_list+0xc48/0x1058 ni_ins_attr_ext+0x510/0x7c0 ni_insert_attr+0x3f8/0x70c ni_insert_resident+0xc8/0x3b0 ntfs_set_ea+0x66c/0xd28 ntfs_setxattr+0x4d8/0x5b0 __arm64_sys_setxattr+0xa4/0x124 Allocated by task 345: ni_create_attr_list+0x188/0x1058 The buggy address belongs to the cache kmalloc-1k of size 1024 (the write lands at object+1024).

record_size が常に十分であると仮定するのではなく、実際の属性に基づいてバッファのサイズを決定します。

If you want to get best quality of vulnerability data, you may have to visit VulDB.

責任者

Linux

予約する

2026年09月11日

モデレーション

承諾済み

エントリ

VDB-405899

EPSS

0.00000

アクティビティ

非常低い

セクター

Pharma, Police, ...

ソース

Interested in the pricing of exploits?

See the underground prices here!