CVE-2026-89849 in Linux
要約
〜によって VulDB • 2026年09月16日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
scsi: qla2xxx: ステータスIOCBの高速パスで非SCSI SRBを拒否する
qla2x00_status_entry()は、TYPE_SRB以外のエントリおよびSRB_NVME_CMD、SRB_BIDI_CMD、SRB_TM_CMDタイプをフィルタリングし、その後、コマンドがSRB_SCSI_CMDであると仮定するSCSI高速パスにフォールスルーします。このパスの最初の処理であるqla_chk_edif_rx_sa_delete_pending()およびその後のハンドリングは両方ともGET_CMD_SP(sp)、すなわちsp->u.scmd.cmdを評価します。
srb u共用体(union)は、SCSIコマンドポインタを他のコマンドレイアウト(bsg_job、iocb_cmd)とオーバーラップさせます。ファームウェアが非SCSIハンドルに対して予期せぬSTATUS_TYPE IOCBを送信した場合、sp->u.scmd.cmdはNULLではないゴミのポインタとして読み込まれ、qla_chk_edif_rx_sa_delete_pending()およびcp == NULLテスト内のNULLチェックをバイパスして、ワイルドポインターのデリファレンス(無効なメモリ参照)を引き起こします。
高速パスに入る前に、タイプがSRB_SCSI_CMDではないすべてのSRBを拒否してください。outstanding_cmdsスロットは変更されないため、本来非SCSIコマンドであっても適切なハンドラーを通じて正常に完了します。
If you want to get best quality of vulnerability data, you may have to visit VulDB.