CVE-2026-97555
smb: クライアント: DACL の所有者/グループ書き換えにおけるヒープオーバーフローを修正
- 公開済み
- 2026/09/25
- 更新済み
- 2026/10/30
- CNA の割り当て
- Linux
- 観察された証拠
- 2026/11/04
プライマリ CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H低 · 今後 30 日間
- パーセンタイル
- 48.0%
- モデルの日付
- 2026/11/04
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
Linuxカーネルにおいて、以下の脆弱性が修正されました: smb: client: DACLの所有者/グループ書き換えにおけるヒープオーバーフローの修正。id_mode_to_cifs_aclが既存のDACLを書き換える際、dacl_ptr->sizeによって報告されるオンディスクのDACL長に応じたサイズのバッファを割り当てます。しかし、replace_sids_and_copy_acesは、cifs.idmapアップコールから取得した新しい所有者/グループSIDで各ACEを書き換える場合があります。これらのSIDは最大SID_MAX_SUB_AUTHORITIES(15)個のサブオーソリティを持つことができ、各ACEは最大76バイト(sizeof(struct smb_ace))になります。元のDACLに短いSID(例: サブオーソリティ1個)が含まれている一方で、置換後のSIDが長い場合、書き換えられたACEが割り当て領域をオーバーフローします。これを修正するには、常に最悪ケースのSID拡張を見込んで予算を確保します: sizeof(struct smb_acl)にnum_aces * sizeof(struct smb_ace)を加えたものを割り当てることで、smb_aclヘッダーと最大SIDサイズでの各ACEのための領域をカバーします。これにより、cifsaclマウントではdacl_ptr->sizeを使用する一方、mode_from_sidマウントではnum_aces * sizeof(struct smb_ace)を使用するという以前の分割ロジックが置き換えられます: どちらのパスも同じ書き換えを引き起こす可能性があり、同じ余裕が必要です。KASANはこれを次のように報告します: BUG: KASAN: slab-out-of-bounds in build_sec_desc+0x1e8a/0x2680 [cifs] Write of size 4 at addr ffff8881a5e25374 by task chown/5298 ... 問題のあるアドレスは、割り当てられた884バイトの領域[ffff8881a5e25000, ffff8881a5e25374)の右端から0バイトの位置にあります
ソース
- CVE-2026-97555エクスプロイト
Linux cifs.ko の DACL ヒープオーバーフロー(CVE-2026-97555)に関する分析、POC、および arm64 エクスプロイトチェーン。参照ビルド上で uid-0 への資格情報上書きまで昇格します。
責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。