概要
Perl用データベースインターフェースモジュール(DBI)のバージョン1.648未満に、ヒープバッファオーバーフロー脆弱性(CWE-787)が存在します。
preparseメソッドはSQLのプレースホルダー文字(?)を番号付きバインダー形式(:p1, :p2 等)に展開しますが、バッファ確保サイズがバインダー1個につき3文字固定となっています。バインダー番号が10〜99の場合は4文字、100〜999の場合は5文字が必要であるため、プレースホルダーが10個以上のSQLステートメントを処理した場合にヒープオーバーフローが発生します。
CVSSベクトル
| 属性 | 値 |
|---|---|
| Attack Vector | Network |
| Attack Complexity | Low |
| Privileges Required | None |
| User Interaction | None |
| Scope | Unchanged |
| Confidentiality | High |
| Integrity | High |
| Availability | High |
| CVSSスコア | 9.8 (CRITICAL) |
影響を受けるソフトウェア
| 製品 | 影響バージョン | 修正バージョン |
|---|---|---|
| Perl DBI | 1.648未満 | 1.648 |
プレースホルダーが10個以上のSQLをpreparseを通じて処理するアプリケーションが対象です。
修正バージョンと回避策
- DBI 1.648 以降へアップデートする
cpanm DBIまたはcpan DBIでアップデート可能
関連リンク
データソース: NVD (NIST) AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
