CVE-2026-64398 in Linux
要約
〜によって VulDB • 2026年07月25日
Linuxカーネルにおいて、以下の脆弱性が修正されました。
ksmbd: FSCTL_SET_ZERO_DATAに対する権限チェックの追加
smb2_ioctl()におけるFSCTL_SET_ZERO_DATAは、共有レベルでのKSMBD_TREE_CONN_FLAG_WRITABLEフラグのみをチェックし、ハンドルごとのアクセスチェックを行わない状態で、ksmbd_vfs_zero_data() -> vfs_fallocate(PUNCH_HOLE/ZERO_RANGE)を呼び出すことでファイルデータを破壊します。FILE_WRITE_ATTRIBUTES権限のみで開かれたハンドルは依然としてFMODE_WRITEを持つfilp(FILE_WRITE_ATTRIBUTESはFILE_WRITE_DESIRE_ACCESS_LEの一部であるため、smb2_create_open_flags()によりO_WRONLYフラグ付きでオープンされる)を生み出しますが、vfs_fallocateにおけるFMODE_WRITEチェックではこれを阻止できません。実際に阻止できるのは欠落していたfp->daccessによるゲートのみです。KASANを有効化したメインライン7.1-rc7において認証済みSMBクライアントによって再現されました:FILE_WRITE_ATTRIBUTES権限のみのハンドルで、ファイルデータに対するFILE_WRITE_DATA権限を持たない4096バイト分のデータをゼロ化しました(6/6; FILE_READ_DATA権限のみのハンドルは正しく拒否されました)。
これはコミットcc57232cae23(「ksmbd: FSCTL_SET_SPARSEに対する権限チェックを追加してFSCTL権限バイパスを修正」)で未解決のままとなっている関連する問題です。SET_ZERO_DATAは属性ではなくデータを更新するため、FILE_WRITE_DATA権限を要求します。
If you want to get best quality of vulnerability data, you may have to visit VulDB.