| 概要 | PhpSpreadsheet is a pure PHP library for reading and writing spreadsheet files. Prior to 1.30.4, 2.1.16, 2.4.5, 3.10.5, and 5.7.0, the SpreadsheetML XML reader (Reader\Xml) does not validate the ss:Index row attribute against the maximum allowed row count (AddressRange::MAX_ROW = 1,048,576). An attacker can craft a SpreadsheetML XML file with ss:Index="999999999" on a <Row> element, which inflates the internal cachedHighestRow to ~1 billion. Any subsequent call to getRowIterator() without an explicit end row will attempt to iterate ~1 billion rows, causing CPU exhaustion and denial of service. This vulnerability is fixed in 1.30.4, 2.1.16, 2.4.5, 3.10.5, and 5.7.0. |
|---|---|
| 公表日 | 2026年5月13日7:16 |
| 登録日 | 2026年5月15日4:18 |
| 最終更新日 | 2026年5月14日3:01 |
| CVSS3.1 : HIGH | |
| スコア | 7.5 |
|---|---|
| ベクター | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| 攻撃元区分(AV) | ネットワーク |
| 攻撃条件の複雑さ(AC) | 低 |
| 攻撃に必要な特権レベル(PR) | 不要 |
| 利用者の関与(UI) | 不要 |
| 影響の想定範囲(S) | 変更なし |
| 機密性への影響(C) | なし |
| 完全性への影響(I) | なし |
| 可用性への影響(A) | 高 |
| 構成1 | 以上 | 以下 | より上 | 未満 | |
| cpe:2.3:a:phpoffice:phpspreadsheet:*:*:*:*:*:*:*:* | 1.30.4 | ||||
| cpe:2.3:a:phpoffice:phpspreadsheet:*:*:*:*:*:*:*:* | 2.0.0 | 2.1.16 | |||
| cpe:2.3:a:phpoffice:phpspreadsheet:*:*:*:*:*:*:*:* | 2.2.0 | 2.4.5 | |||
| cpe:2.3:a:phpoffice:phpspreadsheet:*:*:*:*:*:*:*:* | 3.3.0 | 3.10.5 | |||
| cpe:2.3:a:phpoffice:phpspreadsheet:*:*:*:*:*:*:*:* | 4.0.0 | 5.7.0 | |||
| タイトル | PHPOfficeのPhpSpreadsheetにおける制限またはスロットリング無しのリソースの割り当てに関する脆弱性 |
|---|---|
| 概要 | PhpSpreadsheetはスプレッドシートファイルの読み書きを行う純粋なPHPライブラリです。バージョン1.30.4、2.1.16、2.4.5、3.10.5、および5.7.0より前のSpreadsheetML XMLリーダー(Reader\Xml)は、ss:Indexの行属性を最大許容行数(AddressRange::MAX_ROW = 1,048,576)に対して検証しません。攻撃者はRow要素にss:Index="999999999"を設定したSpreadsheetML XMLファイルを作成できます。これにより、内部のcachedHighestRowが約10億に膨れ上がります。以降、明示的な終了行が設定されていない場合にgetRowIterator()を呼び出すと、約10億行を反復処理しようとし、CPU資源の枯渇およびサービス拒否を引き起こします。この脆弱性はバージョン1.30.4、2.1.16、2.4.5、3.10.5、および5.7.0で修正されています。 |
| 想定される影響 | 当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 また、当該ソフトウェアが扱う情報について、書き換えは発生しません。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 |
| 対策 | 正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。 |
| 公表日 | 2026年5月12日0:00 |
| 登録日 | 2026年5月15日11:01 |
| 最終更新日 | 2026年5月15日11:01 |
| PHPOffice |
| PhpSpreadsheet 1.30.4 未満 |
| PhpSpreadsheet 2.0.0 以上 2.1.16 未満 |
| PhpSpreadsheet 2.2.0 以上 2.4.5 未満 |
| PhpSpreadsheet 3.3.0 以上 3.10.5 未満 |
| PhpSpreadsheet 4.0.0 以上 5.7.0 未満 |
| No | 変更内容 | 変更日 |
|---|---|---|
| 1 | [2026年05月15日] 掲載 |
2026年5月15日11:01 |