CVE-2026-90011 in Linux情報

要約

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

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

scsi: target: iscsi: ログインペイロード用のターミネータバイトを確保する

iscsi_target_check_login_request()は、DataSegmentLengthがMAX_KEY_VALUE_PAIRSを超えるログインPDUを拒否しますが、そのテスト条件は「>」であり、login->req_bufには正確にMAX_KEY_VALUE_PAIRSバイトが割り当てられています。isctit_get_login_rx()はpayload_length + paddingバイトのペイロードを受け取ります。ここで

padding = ((-payload_length) & 3);

です。したがって、8189から8192までの任意のpayload_length値で、8192バイトのバッファ全体が埋め尽くされます。書き込みは境界内に行われますが、NULターミネータ用のバイトが残されません。

このバッファはその後C文字列として消費されます。CHAPパスでは、chap_check_algorithm()がkstrdup(a_str)を呼び出し、extract_param()がstrstr(in_buf, pattern)に続いてstrlen_semi()を呼び出しますが、これらはいずれも長さを受け取りません。convert_null_to_semi()はさらに、埋め込まれたすべてのNULを「;」に書き換えるため、適切に形成されたNUL区切りのkey=valueレコードで構成されるペイロードであってもターミネータがありません。これらの処理はオブジェクトの末尾を超えて隣接するslabメモリへと読み込みます。これはCHAP用に設定されたポータルに対して認証されていないinitiatorから到達可能です。認証が不要な場合、iscsi_login_zero_tsih_s2()はAuthMethodをNoneに書き換え、CHAPパスには決して入りません。

1バイト余分に割り当てます。kzalloc()はその領域をゼロで埋め、すべてのライターは最大MAX_KEY_VALUE_PAIRSバイトまでオフセット0へコピーするため、このメモリ領域は一切書き込まれません。これによりバッファは常にターミネートされます。

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

責任者

Linux

予約する

2026年09月11日

モデレーション

承諾済み

エントリ

VDB-405854

EPSS

0.00000

アクティビティ

非常低い

ソース

Interested in the pricing of exploits?

See the underground prices here!