Bricksforge「CVE-2026-85097」:深刻なRCE脆弱性への対処

Patchstackの監視システムは、WordPressプラグイン「Bricksforge」を狙った悪用の試みを、10月7日21時47分(UTC)から検知していました。これはCVEレコードが公開される約9時間半前にあたります。

「CVE-2026-85097」として追跡されているこの脆弱性により、認証されていない攻撃者が、脆弱なWordPressサイト上でPHPコードをアップロードして実行できます。ログインやユーザー操作は不要です。PatchstackはこれをCVSS 10.0と評価しており、WordfenceはCVSSスコア9.8の「Critical」としています。

この脆弱性は、Bricksforgeのバージョン3.1.8.9までに影響します。管理者はただちにアップデートし、不審なアクティビティを調査する必要があります。パッチ適用前にサイトが公開状態だった場合は、特に注意が必要です。

BricksforgeプラグインのCVE-2026-85097とは

Bricksforgeは、WordPressテーマ「Bricks Builder」向けの商用アドオンです。基本のビルダーに、フォームやアニメーション、動的データの機能を追加します。

開示までの流れは迅速でした。d.v4n_s3cとして知られる研究者が脆弱性を報告し、CVEレコードは10月8日に公開されました。

Patchstackの技術分析によると、この脆弱性は、フォーム送信時にユーザーが制御できるファイルのメタデータを十分に検証していないことが原因です。

この脆弱性は、危険な種類のファイルを無制限にアップロードできる「CWE-434」に分類されています。影響を受けるのは、Bricksforgeのバージョン3.1.8.9以前です。

攻撃に成功すると、侵入者は任意のPHPコードを実行したり、サイトのコンテンツを改ざんしたり、機密情報にアクセスしたりできます。Webシェルを設置して、永続的なアクセスを確保することも可能です。

この脆弱性は、以前報告されたWordPress Coreのリモートコード実行の脆弱性とは別のものです。影響を受けるコンポーネントも、悪用の条件も異なります。

Bricksforgeの脆弱性がコード実行を可能にする仕組み

根本的な原因は、Bricksforgeがファイルの安全性を確認する箇所と、その後にユーザー入力を信頼する箇所が食い違っていることです。

このプラグインは、ファイルの初回アップロード時にはMIMEタイプを検証します。しかし、その後のフォーム送信時には、クライアントから渡されたメタデータをそのまま信頼します。この中には、temporaryFileUploadsパラメータ内にある、検証されていないurlフィールドも含まれます。

攻撃者はまず、認証不要のエンドポイントから有効なnonceを取得します。次に、PHPコードを埋め込んだ細工済みの画像ファイルを送信します。これによってこの弱点を突くことができます。

続くフォーム送信の際に、攻撃者は関連するメタデータを操作します。すると、Bricksforgeはアップロードされた内容を、PHPのファイル名を持つ場所に書き込んでしまいます。

こうして作成されたファイルにリクエストが送られると、サーバーが埋め込まれたコードを実行する可能性があります。

脆弱な機能は、BricksforgeのProフォームコンポーネントにあります。具体的にはpro-forms/actions/init.phpとactions/base.phpに関連するコードです。

攻撃者は管理者の認証情報も、既存のWordPressアカウントも必要としません。そのため、リスクは特に深刻です。

この攻撃は、アップロード検証の不備を突き、悪意あるPHPファイルをサーバーに設置させた、他のWordPressプラグインの脆弱性とも似ています。

CVE-2026-85097は実際に悪用されているのか

はい。Patchstackは、CVEレコードが一般に公開される前の10月7日から、悪用の試みが始まっていたことを確認しています。

同社のテレメトリでは、63の異なる送信元IPアドレスからのアクティビティを記録しました。

44個のIPから成るクラスターは、数秒のうちに同一のリクエストを56件送信しました。別のクラスターは3つのIPを使い、同じアップロード済みファイルに対して、25種類のファイル拡張子とエンコードのバリエーションを試していました。

観測された試行のほぼすべてが、BricksforgeのREST APIにあるフォーム送信エンドポイントを標的にしていました。

POST /wp-json/bricksforge/v1/form_submit

攻撃者は、別のPHP拡張子や大文字小文字を混ぜた表記、エンコードしたファイル名を試していました。ファイル拡張子のフィルタリングを回避できる組み合わせを探っていたとみられます。

一部のペイロードでは、login_admin_*.phpに一致するファイル名が使われていました。また、Bricksforgeの一時フォルダではなく、標準的なWordPressのアップロードディレクトリに、PHPファイルを直接設置しようとしていました。

繰り返されるリクエストとそのバリエーションから、自動化された悪用の試みであることがうかがえます。ただし、単一の攻撃者によるものか、無関係な複数の攻撃者によるものかは確定できません。

悪用の試みと、侵入が確認された事例は区別して考える必要があります。Patchstackの調査結果が記録しているのは、悪意あるリクエストとペイロードの構造です。侵害に成功したサイト数については、検証された件数は示されていません。

サイト管理者が確認すべき痕跡

Patchstackは、管理者が不審なアクティビティを調査する際に役立つ指標をいくつか挙げています。

  • temporaryFileUploadsパラメータを含む、/wp-json/bricksforge/v1/form_submitへのリクエスト
  • .gifや.pngなどの画像ファイルパスと、PHP関連の送信先URLを組み合わせたアップロードメタデータ
  • ファイル拡張子、大文字小文字、エンコード文字を変えながら繰り返されるフォーム送信
  • /wp-content/uploads/bricksforge/tmp/やその他のWordPressアップロードディレクトリ内にある、見覚えのないPHPファイル
  • login_admin_*.phpという名前のファイル、または新規作成されたPHPファイルの実行を試みるリクエスト

管理者は、少なくとも10月7日までさかのぼって、関連するWebサーバーのログ、WordPressのアクティビティ、ファイルシステムの変更を確認する必要があります。

パッチを適用すれば、脆弱なコードを通じたさらなる悪用は防げます。ただし、それ以前の侵害で作成されたファイルやアカウントが、自動的に削除されるわけではありません。

不審なアクティビティを調査する組織は、悪意あるファイルがすでに設置されていないかを判断する際、既知のWordPressのWebシェル攻撃パターンも参照できます。

CVE-2026-85097へのパッチ適用方法

まず推奨されるのは、Bricksforgeをサポート対象の最新リリースにアップデートすることです。

Patchstackは、影響を受ける3.xの環境では3.1.8.10以降が修正版であるとしています。Bricksforgeの公式チェンジログによると、CVE-2026-85097はバージョン4.0.0でも修正されています。

ベンダーはその後、10月8日に4.0.1をリリースしました。これは、Proフォームに関連する別のファイルアップロードのセキュリティ問題に対処するものです。この問題は、Proフォームが有効なサイトに影響し、アップロード用フィールドを持たないフォームのサイトも含まれていました。

10月13日にリリースされたBricksforge 4.0.2が、文書化されている最新リリースです。REST APIエンドポイント全体でセキュリティ対策が追加で強化され、一時アップロードの保護も強化されました。また、4.0.1で発生した画像アップロードの不具合も修正されています。

管理者は、Bricksforgeの公式の配布経路またはアップデート機能を使ってサポート対象の最新リリースをインストールし、導入されているバージョンを確認してください。

WordPressのダッシュボードに保留中のアップデートが表示されないからといって、古いインストールが保護されていると考えてはいけません。

Bricksforgeは、WordPress.orgのプラグインディレクトリではなく商用で配布されています。このため、管理者はプラグイン独自のアップデート機能とライセンスの状態を確認する必要があります。

Proフォームを使用しているサイトでは、導入バージョンの確認が特に重要です。ベンダーによると、4.0.1で対処した関連の問題は、フォームに目に見えるファイルアップロード用フィールドがなくても、Proフォームの環境に影響します。

ただちにアップデートできない場合、PatchstackはCVE-2026-85097向けに「RapidMitigate」ルールを提供しています。このルールは、既知の悪用の試みをトラフィック層でブロックできます。

この緩和策は一時的な保護にとどまり、ソフトウェアの修正の適用に代わるものではありません。

サイトの所有者は、アップロードディレクトリに見覚えのないPHPファイルがないか調べる必要もあります。あわせて、管理者アカウントに不正な変更がないかを確認し、パッチ適用前に記録された不審なリクエストも調査してください。

侵害が疑われる場合、管理者は、影響を受けたサイトを本番環境に戻す前に、インシデント対応の手順に従う必要があります。

サイト所有者が次に取るべき対応

最優先の作業は、影響を受けるBricksforgeのインストールを特定し、セキュリティ修正済みの最新リリースを適用して、悪意あるアクティビティの痕跡を確認することです。

Patchstackは自動化された悪用の試みを記録していますが、これらの観測結果から、侵害されたサイト数を割り出すことはできません。

管理者は、報告されたアクティビティを、脆弱なサイトを調査すべき理由として受け止める必要があります。侵害が確認されたという報告を待つべきではありません。

Bricksforgeはパッチの履歴を明確にしています。ベンダーによると、CVE-2026-85097はバージョン3.1.8.10と4.0.0で修正され、その後のリリースでProフォームの保護がさらに追加されました。

Bricksforgeを使用しているWordPressサイトでは、サポート対象の最新リリースをインストールし、10月7日までさかのぼってログを確認することを優先してください。

関連記事:以前のWordPressの権限昇格の脆弱性でも、認証されていない攻撃にサイトがさらされました。サードパーティ製プラグインを常に最新の状態に保つ必要性が改めて浮き彫りになっています。

翻訳元: https://www.esecurityplanet.com/cybersecurity-threats/news-bricksforge-cve-2026-85097-wordpress-rce/

本記事は esecurityplanet.com の記事を翻訳・要約したものです。