速報
CVE-2026-45247 — Magento拡張のPHPオブジェクトインジェクションで認証なしRCE(解説と対応策)
CVE-2026-45247は、Magento 2 用拡張「Mirasvit Full Page Cache Warmer」1.11.12未満に存在するPHPオブジェクトインジェクション(信頼できないデータのデシリアライズ・CWE-502)の脆弱性です。認証なしでリモートコード実行(RCE)に至り、CVSSは9.3。何が起きるのか、影響範囲、そして即やるべき対応策(更新・デシリアライズの原則・拡張の棚卸し)を、攻撃手順を伏せて防御目線で解説します。
実際に悪用が確認されている脆弱性(CISA KEV掲載)の速報解説です。何が起きるのか・影響範囲・対応策を、攻撃の再現手順は伏せて防御目線でまとめます。
- CVE
- CVE-2026-45247
- 重大度
- Critical(CVSS 9.3 / v4.0)
- 種別
- PHPオブジェクトインジェクション(信頼できないデータのデシリアライズ・CWE-502)
- 影響
- 認証なしでのリモートコード実行(RCE)
- 対象
- Mirasvit Full Page Cache Warmer for Magento 2 — 1.11.12 未満
- 本命の対応
- 1.11.12 以降へ更新
放置の危険度
認証不要でRCEに至るため、無差別スキャンの格好の標的です(だからこそKEV入りしています)。「うちは小さいから狙われない」は通用しません。スキャナはインターネット全体を機械的に舐めます。
どんな脆弱性か(PHPオブジェクトインジェクション)
PHPには、データを文字列化する serialize と、それを復元する unserialize があります。信頼できない入力をそのまま unserialize すると、攻撃者は「復元されると望ましくない副作用を起こすオブジェクト」を渡せます。復元の過程(マジックメソッド等)で意図しない処理が連鎖し、最終的にコード実行まで至る——これがPHPオブジェクトインジェクション(CWE-502)です。
✗ 信頼できない入力を復元
外部入力 → unserialize でオブジェクト化 → 復元処理が連鎖 → コード実行
✓ 値として扱う
外部入力は JSON 等のデータとしてのみ受ける → オブジェクトは復元しない
今回の対象は、Magento 2 のキャッシュ高速化拡張です。攻撃者は認証を経ずに到達でき、CVSSは 9.3 と最悪クラスに評価されています。
影響範囲
| 項目 | 内容 |
|---|---|
| 対象拡張 | Mirasvit Full Page Cache Warmer for Magento 2 |
| 影響を受けるバージョン | 1.11.12 未満 |
| 修正バージョン | 1.11.12 以降 |
| 前提条件 | 認証不要(unauthenticated) |
| 到達できる影響 | リモートコード実行(RCE) |
対応策
拡張を 1.11.12 以降へ更新(最優先・本命)
更新までの時間稼ぎ(多層防御)
侵害の有無を確認
拡張の棚卸し+CVE機械監視
ITDの視点:デシリアライズは“設計で消す”
この種の脆弱性は無くなりません。理由は「便利だから外部入力をそのまま復元してしまう」から。ITDの立場は明快で、信頼できないデータを unserialize する場面を作らないこと。外部入力は json_decode 等でデータとしてのみ受け、オブジェクトの復元には使わない。これでこのクラスは設計段階で構造的に消えます。
次に読む
- 用語:RCE(リモートコード実行)とは / CVE とは / CVSS とは
- 速報一覧:脆弱性速報
よくある質問
QCVE-2026-45247で何が起きる?
認証なしの攻撃者が、対象拡張を入れたMagentoサイト上で任意コードを実行(RCE)できます。サイト改ざん・情報窃取・他システムへの足がかりに直結する、最悪クラスの脆弱性です。
Q一番確実な対応は?
拡張「Mirasvit Full Page Cache Warmer for Magento 2」を1.11.12以降へ更新することです。更新が本命の封鎖で、設定変更やWAFは更新までの時間稼ぎと多層防御として併用します。
QPHPオブジェクトインジェクションとは?
信頼できない入力をそのままデシリアライズ(`unserialize`等)し、攻撃者が用意したオブジェクトを生成させることで、本来意図しない処理を連鎖的に動かす脆弱性です(CWE-502)。本質的な防御は『信頼できないデータをデシリアライズしない』ことです。