Marcellテーマ1.2.14以前に認証不要の脆弱性
WordPressテーマMarcellの1.2.14以前に、ログインなしで突かれうるPHP Object Injectionの脆弱性が見つかりました。このテーマでサイトを運用している組織が対象で、まず自社のサイトに入っている版を確認してください。修正版の案内が出ているかは配布元で確かめ、出ていなければ回避策を検討してください。
急ぎ度: 早めに
CVSS v3は9.8で認証不要のためサイトが対象なら放置できませんが、実際の悪用は報告されておらず、修正版の版番号も確認できていないので、至急ではなく早めの対応と判断しました。
関係があるか
Marcellテーマを使っているWordPressサイトが対象です。コーポレートサイトやキャンペーンサイトなど、外部公開している環境が当てはまります。
| 製品 | 影響を受ける版 | 直った版 |
|---|---|---|
| Marcell(ThemeREX提供のWordPressテーマ) | 1.2.14以前 | 版番号は不明。Patchstackの告知とテーマの配布元で確認してください |
確かめ方
- 1WordPressの管理画面で「外観」の「テーマ」を開き、Marcellが入っているか、版が1.2.14以前かを見ます。
- 2子テーマを使っている場合は、親テーマがMarcellかどうかを確認します。
- 3WP-CLIが使える環境では、次のコマンドでテーマの一覧と版を確認できます。
- 4複数のサイトを運用している場合は、制作会社や保守業者にも、Marcellを使ったサイトがないか問い合わせてください。
何が起きたか
Marcellテーマに、外部から送られたデータを安全に確認しないまま処理してしまう脆弱性があります。ログインしていない相手からのデータでも処理が進み、サイトの情報漏えい、改ざん、停止につながりうると評価されています。
分類はCWE-502で、Patchstackは「PHP Object Injection」と呼んでいます。PHPが、受け取った文字列をプログラム内のオブジェクトに戻す処理に、外部からのデータが渡ってしまう種類の問題です。
公開日は2026年10月29日です。CVSS v3の深刻度はcriticalで、スコアは9.8です。
攻撃の流れ
-
1
サイトに到達
対象版のMarcellを使う公開サイトに、外部から接続します。
-
2
細工データ送信
テーマが受け付ける入力に、PHPのオブジェクトとして復元されるデータが紛れ込みます。
-
3
オブジェクト復元
テーマが入力を検証せずにオブジェクトへ戻し、攻撃者の意図した状態が作られます。
-
4
サイトへ影響
情報の読み取り、内容の改ざん、サイトの停止といった被害が起こりえます。
どう悪用されるか
悪用にログインは要りません。インターネットから対象サイトに到達できれば、利用者や管理者に何かを操作させなくても成立し、複雑な条件も付いていません。CVSSのベクターでも、ネットワーク経由、認証不要、操作不要と評価されています。
被害は、機密性・完全性・可用性のすべてで高いとされています。顧客情報などの読み取り、ページの書き換え、サイトの停止が想定されます。
この種の脆弱性は一般に、サイトに入っているほかのコードの部品しだいで被害の大きさが変わります。ただ、評価は最悪の場合を前提にしているため、対象版が動いているサイトでは高い被害を想定して動くのが安全です。
今すぐやること
-
1
Marcellを使うサイトを洗い出す
管理しているWordPressサイトのうち、Marcellを使っているものと版を一覧にします。子テーマの親や、検証用・旧サイトも漏らさず確認します。
wp theme list --fields=name,status,version -
2
修正版の有無を配布元で確認する
ThemeREXの配布元とPatchstackの告知で、修正版が出ているかを見ます。出ていれば、更新前にファイルとデータベースのバックアップを取ってから、修正版に更新します。
-
3
修正版がなければ回避策に移る
修正版が見つからないときは、下の回避策を当日中に検討します。更新できるまで放置しない判断が要ります。
-
4
公開後の痕跡を確認する
10月29日の公開以降のアクセスログに不審なリクエストがないか、身に覚えのない管理者アカウントやファイルが増えていないかを見ます。何かあれば、パスワードの変更とサイトの復旧手順に進みます。
すぐ更新できないとき
修正版がすぐ当てられないときは、使っていないMarcellをテーマ一覧から削除します。実際に使っているサイトでは、WAFのベンダーがこの脆弱性向けのルールを出していないかを確認し、あれば有効にします。管理画面を使わない期間のサイトは、一時的に公開を止める選択肢もあります。
背景
WordPressのテーマは見た目を整えるだけでなく、PHPのコードとしてサイト内で動きます。Marcellのようなテーマは、ページ表示のたびに外部からの入力を扱うため、入力の処理に穴があると、公開サイトがそのまま入り口になります。
PHP Object Injectionは、PHPの「オブジェクトを文字列にして保存し、あとで元に戻す」仕組みに外部の入力が混ざると起こる、古くから知られた種類の脆弱性です。テーマやプラグインのような追加部品で見つかることが多く、被害の大きさは、同じサイトに入っているほかのコードしだいで変わります。そのため、CVSSでは最悪の場合を想定して9.8の高い評価が付くことがあります。
よくある質問
Q.有効化していないMarcellが残っているだけでも対象ですか。
Q.子テーマを使っているサイトはどう見ればよいですか。
まだ分かっていないこと
- 修正版の版番号と公開状況は分かっていません。配布元とPatchstackの告知で確認してください。
- 実際の攻撃で悪用された報告は公表されていません。公開日以前から突かれていたかどうかも分かっていません。
- 悪用にサイト内のほかのコードが必要かどうかや、無効化したテーマでも到達できるかは、公表されていません。
この記事は、取得元の公開情報をもとに生成 AI で作成しています。誤りを含むことがあります。対応を決める前に、下の原文と参照先を確認してください。
影響パッケージ
| 種類 | パッケージ | 影響を受ける版 | 直った版 |
|---|---|---|---|
| ThemeREX | Marcell |
1.2.14 以前 |
— |
原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。
Unauthenticated PHP Object Injection in Marcell <= 1.2.14 versions.
出典: CVE.org (CVE Program・cvelistV5) NVD GitHub Advisory
参照URL
- web patchstack.com
- web nvd.nist.gov
- web github.com