本文へスキップ

Drupal Commerce Coreの脆弱性が悪用中、3.3.13へ今すぐ更新を

攻撃者がDrupal Commerce Core(ドルパル・コマース・コア)の「Highly critical」なアクセスバイパス脆弱性CVE-2026-118539を使い、不正注文を行っています。修正版は3.3.13と8.x-2.41です。

著者

5 分で読めます

英語の原文から機械翻訳したものです。原文はClaire Whitmoreが事実確認と編集を行いました。内容に相違がある場合は英語版が優先されます。 編集方針

Drupal.orgのセキュリティ勧告SA-CONTRIB-2026-254(Commerce Core)のスクリーンショット。赤いHighly criticalラベル、21/25のリスクスコア、影響を受けるバージョンが表示されています。

数字で見る

Drupal's risk score, rated highly critical
21/25
websites use Commerce Core, per BleepingComputer
42,000+
merchant reports of fraudulent orders that exposed the flaw
2
when the hole opened on JSON:API sites, per Centarro
May 2020

攻撃者が、コンテンツ管理システムDrupalのショッピングカート用モジュールであるDrupal Commerce Coreの重大な脆弱性を悪用し、代金を支払っていない注文を行っています。Drupalのセキュリティチームは2026年10月28日に勧告SA-CONTRIB-2026-254を公開し、このバグは「実際に悪用されている」と述べています。このモジュールを使うすべてのストアに、今週必要なことは2つあります。3.3.13または8.x-2.41への更新と、最近の注文の監査です。

この脆弱性はCVE-2026-118539として追跡されています。Drupalは25点満点中21点、「Highly critical(極めて重大)」の区分に位置づけています。ベクターはAC:None/A:None/CI:Some/II:Some/E:Exploit/TD:Allです。平たく言えば、ログインも特別なアクセス権も不要で、データの読み取りと変更ができ、悪用コードが存在するということです。

この脆弱性で攻撃者ができること

モジュールは「特定のルートとエンティティフィールドを十分に保護していない」と勧告は述べています。これはアクセスバイパスです。つまり、本来は閉じられているべきページやデータ項目に、訪問者が到達できてしまいます。BleepingComputerによると、認証されていない攻撃者がこれを使ってストアのアクセス規則をすり抜けられます。

Drupal Commerceを保守する企業Centarroは、CEOのRyan Szrama氏による10月29日の投稿で攻撃の内容を説明しました。加盟店は4種類の不正を確認しています。

  • チェックアウトを飛ばして直接作成された注文。注文は存在するが、支払いは一度も行われていない。
  • 注文管理画面では支払い済みと表示されるのに、裏付けとなる支払い記録がない注文。主にJSON:APIウェブサービスを公開しているサイトで発生。
  • チェックアウト前に引き下げられた商品価格。
  • スタッフもプロモーションも追加していない割引、手数料、その他の調整。

「悪意あるユーザーが不正注文を試みたという報告を2件受け取りました」とSzrama氏は書いています。0.01ドルなど、明らかにおかしい価格の注文もありました。通常価格のものもありました。「現時点では、スクリプト化されていたとも、最初のサイト以外で悪用されたとも考えていません」と同氏は付け加えています。Drupalセキュリティチームは10月28日に修正のテスト、パッケージング、リリースを調整しました。

影響を受けるのは誰か、何をインストールすべきか

Drupalは脆弱性の報告者としてDan Puccetti氏、Marcus Johansson氏、Robert Snyder氏の名前を挙げています。修正にはSzrama氏を含む6人がクレジットされています。BleepingComputerは、drupal.orgのプロジェクトページを引用し、このモジュールの導入サイト数を4万2,000以上としています。

ブランチ影響を受けるバージョン修正版Drupalの要件(Rescanaによる)
Commerce Core 3.x3.0.0以上、3.3.13未満3.3.13Drupal 10.3以降、またはDrupal 11
Commerce Core 8.x-2.x8.x-2.41より前のすべてのリリース8.x-2.41Drupal 9.3以降、またはDrupal 10

修正はCommerce Coreだけでは終わりません。Centarroによると、Commerce API、Commerce License、Commerce Shipping、Commerce Stripeも10月28日にセキュリティリリースを受けており、同時に更新すべきです。Rescanaは、Drupalがこれと並行して5件の低評価のCommerce Core勧告、SA-CONTRIB-2026-255から259を公開したと指摘しています。別のStripe勧告SA-CONTRIB-2026-263はcritical評価で、攻撃者が支払いなしで注文を支払い済みにできる可能性があります。

Centarroは8.x-2.xのユーザーに、Drupal 12が出荷されるとこのブランチのサポートが終わることも念押ししています。「できるだけ早く3.xへのアップグレードを推奨します」と投稿は述べています。

穴はどのくらいの期間開いていたか

このバグは古いものです。Centarroによると、JSON:APIを使うサイトでは、2020年5月26日リリースのCommerce Core 8.x-2.18以降、悪用が「理論上可能」でした。それ以外のサイトでは、2021年6月30日の8.x-2.25で窓が開きました。Centarroはこれらを、攻撃が確認された日ではなく、最も早く可能になった日付と位置づけています。

Rescanaによると、この脆弱性は10月29日版の時点でCISAの「悪用が確認された脆弱性(KEV)」カタログに載っていませんでした。「実際に悪用されている」というラベルは、DrupalとCentarro自身によるものです。BleepingComputerによると、CISAはこれまでに5件のDrupalの脆弱性を悪用済みとして指定しており、直近は2026年5月に追加されたSQLインジェクションのバグCVE-2026-9082です。Drupal本体もわずか2週間前にField UIの重大なコード実行脆弱性を修正したばかりです。

注文を監査する方法

パッチは扉を閉めます。しかし、すでにその扉を通って行われた注文を元に戻すことはできません。Drupalの勧告は、サイトは「注文に矛盾がないか監査すべきだ」としています。Centarroの投稿は、ストアのオーナーが実行できる4つのデータベースチェックをクエリとして示しています。

  1. チェックアウトの外で作成され、まだ残高が残っている注文。
  2. 記録上の支払い済み金額が、実際に完了した支払いより多い注文。
  3. 単価が上書きされた注文項目。Centarroは、価格を0.01ドルに下げてから支払った注文は1つ目のチェックで見逃されると指摘しています。
  4. プロモーション由来ではない、独自の手数料や割引などの調整。

該当があっても、不正の証明にはなりません。スタッフが作成した注文や「価格は自分で決める」商品も該当するため、フラグが付いた注文は一件ずつ人が確認する必要があります。Rescanaは、フラグ付き注文のIPアドレスと時刻を、通常のチェックアウト経路のアクセスログと照合すると両者を切り分けやすいと付け加えています。

Centarroの運用上の助言はさらに率直です。注文が作成されたから、あるいはチェックアウトが完了したからという理由で出荷してはいけません。まず支払いを確認してください。そして、サイトがJSON:APIで変更を受け付ける必要がないなら、読み取り専用に設定してください。

開発者にとっての意味

  • 今日パッチを当て、そして2020年まで遡って監査する。 修正自体は3.3.13または8.x-2.41への通常のcomposer更新と、4つの関連モジュールの更新です。時間がかかるのは監査の方です。サイトが2020年5月からJSON:APIを公開していたなら、4つのクエリは先週分ではなく、5年分の注文に対して走らせる必要があります。
  • 「支払い済みと表示」は事実ではなく主張として扱う。 2つ目の攻撃パターンは、管理画面では支払い済みと出るのに、裏付けの支払いエンティティがない注文を作ります。注文状態だけを見て動く出荷の自動化は、攻撃者が書き換えられる項目を信用していたことになります。出荷工程が注文状態ではなく支払い記録を読んでいるか確認してください。
  • ヘッドレスなストアほどリスクが大きい。 JSON:APIに関係する2つの攻撃パターンも、より早い2020年の開始日も、分離型(デカップルド)サイトに当てはまります。APIがフロントエンドに商品データを提供するだけなら、Drupalのバージョンに関係なく、今すぐ読み取り専用にしてください。
  • 関連勧告にも目を配る。 Commerce Stripeの別のcritical修正は、Stripeを決済ゲートウェイに使うすべての人に関係します。Commerce Coreと同じデプロイで更新してください。
  • おかしなものは何でも報告する。 Centarroは「潜在的な脆弱性を知らずにいるより、誤検知や重複の報告を確認する方がずっとよい」と述べています。コードに5年間潜んでいたこのバグを見つけたのは、2件の加盟店からの報告でした。

出典

  1. Commerce Core - Highly critical - Access bypass - SA-CONTRIB-2026-254 - Drupal.org
  2. Update your Drupal Commerce sites: exploit observed in the wild - Centarro
  3. Drupal warns of critical Commerce Core flaw exploited in attacks - BleepingComputer
  4. Hackers Actively Exploit Highly Critical Drupal Commerce Core Authorization Bypass Flaw - The Hacker News
  5. Drupal Commerce Core CVE-2026-118539 Access Bypass Actively Exploited: Patch to 3.3.13 / 8.x-2.41 and Audit Orders - Rescana

関連記事

Drupal.org上のSA-CORE-2026-014のアドバイザリー。Criticalと表示され、リスクスコアは19/25、日付は2026-October-14です。
プログラミング

Drupal 11.4.10、Field UIの深刻なRCE脆弱性を修正

Drupal 11.4.10、11.3.19、10.6.19は、Field UIにある深刻なRCE(リモートコード実行)の脆弱性CVE-2026-108097を修正します。リスク評価は19/25です。既知の攻撃経路の1つはログインを必要としません。

PHPのGitHubセキュリティアドバイザリーGHSA-w8hw-w9fx-j79w。タイトルは「RCE via OOM corruption」で、深刻度は「Critical」(重大)と表示され、修正版として8.2.35、8.3.36、8.4.27、8.5.12が記載されています。
プログラミング

PHP2Shellとは:PHPの重大な脆弱性2件を解説

PHP2Shellは、9.2と評価されたPHPの脆弱性2件の総称で、1回のリクエストでWebサーバーを乗っ取られるおそれがあります。その仕組み、影響を受ける環境、そして完全な対策を解説します。

GitHub上のOpenSSL 4.1.0のリリースページのスクリーンショット。「Latest」と表示され、リリースノートの最初の数行が写っている様子。
プログラミング

OpenSSL 4.1がDTLS 1.3に対応、2週間遅れでリリース

OpenSSL(オープンエスエスエル)4.1.0が10月23日にリリースされ、DTLS 1.3、GREASE、AVX-512による高速化が加わりました。DTLSのセキュリティ上の不具合で最終版のタグ付けが止まってから2週間後のことです。