広く普及しているMagentoの拡張プラグインに重大なセキュリティ脆弱性が発見され、数千ものオンラインストアがリモートコード実行(RCE)攻撃にさらされています。
CVE-2026-45247として追跡されているこの脆弱性は、CVSSスコア9.8と評価されており、認証なしで攻撃者が影響を受けるサーバー上で任意のコードを実行できる深刻なものです。
この脆弱性は、プラグインのキャッシュ機構においてユーザーが制御する入力の処理が不適切であることに起因しています。具体的には、細工されたCacheWarmerクッキーを含むストアフロントへのリクエストがアプリケーションによって処理され、PHPのネイティブ関数であるunserialize()に直接渡されます。
このプラグインはデシリアライズ時にインスタンス化できるクラスを制限していないため、攻撃者は悪意のあるシリアル化オブジェクトを注入することが可能です。
この動作はCWE-502に分類されるPHPオブジェクトインジェクションを引き起こし、Magentoまたはそのライブラリにすでにあるガジェットチェーンと組み合わされることで、完全なリモートコード実行へとエスカレートする可能性があります。
Magentoキャッシュプラグインの脆弱性詳細
Mirasvit Cache Warmerプラグインは、通貨や顧客グループといったさまざまなユーザーコンテキストに応じてキャッシュページを事前生成するために設計されています。
このバリエーションを再現するため、セッション状態データをクッキーにエンコードし、各リクエストと一緒に送信する仕組みになっています。サーバー側では、プラグインがこのクッキーを読み取り、unserialize()を使ってセッションを復元します。
しかし、この処理は内部のキャッシュウォーミング操作だけでなく、すべてのストアフロントリクエストで実行されます。クッキーの値がクライアント側に由来するにもかかわらず検証や制限が行われていないため、攻撃者はデシリアライズ時のオブジェクトインスタンス化を操作する悪意あるペイロードを作成することができます。
バージョン1.11.12より前のMirasvit Cache Warmerはすべて脆弱な状態にあります。さらに、この拡張機能が他のMirasvitパッケージにバンドルされているケースも多く、多くのストアオーナーがインストールされていることに気づいていない可能性があり、リスクは一層高まっています。
Sansecの試算では、少なくとも6,000のMagentoストアが脆弱なMirasvitコンポーネントを実行しているとされていますが、CDNによるマスキングの影響で実際の数はさらに多い可能性があります。
Sansecのシールド保護を利用している顧客は、脆弱性が発見された2026年4月24日の時点ですでに保護されていました。Mirasvitへの通知は5月21日に行われ、修正済みバージョン1.11.12が5月25日にリリースされており、迅速な対応が示されています。
悪用の試みはHTTPリクエストに特徴的な痕跡を残します。セキュリティチームは、不審なシリアル化データのパターンを含むCacheWarmerクッキーが付いた受信リクエストを監視する必要があります。
検出の目安としては、「CacheWarmer:」で始まり、その後にBase64エンコードされた文字列が続くクッキー値が挙げられます。この文字列は通常、シリアル化されたPHPオブジェクトに共通するプレフィックスであるTz、Qz、またはYTで始まります。
推奨される対策
Mirasvitはすべてのユーザーに対し、直ちにバージョン1.11.12以降へのアップグレードを強く推奨しています。すぐにパッチを適用できない環境では、Sansec ShieldのようなWebアプリケーションファイアウォールを導入することで、リアルタイムでの悪用をブロックする効果が期待できます。
また、管理者はeComscanなどのツールを使って侵害評価を実施し、ウェブシェルやバックドアが設置されていないか確認することも推奨されています。
さらに、Webからアクセス可能なディレクトリ、特にpub/フォルダを入念に調査し、攻撃が成功した可能性を示す不審なPHPファイルが存在しないか確認することが推奨されます。
悪用の容易さと認証不要という性質から、攻撃者はこれらの攻撃を大規模に自動化することが可能です。
現在は公開情報が出そろい、パッチの詳細も公開されているため、セキュリティ専門家の間では悪用活動が急速に増加する可能性が高いと警告されています。
MagentoまたはAdobe Commerceを運用する組織は、潜在的な侵害やデータ漏洩を防ぐため、この脆弱性を最優先で対処すべき緊急課題として位置づける必要があります。
翻訳元: https://gbhackers.com/magento-cache-plugin-vulnerability/