
StyleSmuggler(CVE-2026-75650)面向Magento Open Source和Adobe Commerce的IOC工具包。检测受感染的商店、Rust植入程序、PHP Web Shell、持久化工件以及已知的危害指标。
Magento ゼロデイ · Adobe Commerce ゼロデイ · CVE-2026-75650 · APSB26-146 · VULN-39341 · 未認証 RCE · Magento マルウェア · Magento バックドア除去 · Magento 2.4.9 脆弱性 · Rust インプラント · GraphQL styles インジェクション · PHP ウェブシェル
StyleSmuggler(CVE-2026-75650)に関するコミュニティ製の侵害指標(IOC)、侵害スキャナ、および緩和・パッチ適用のガイダンスです。これは Sansec が 2026年9月5日 に公表した、Magento Open Source / Adobe Commerce の未認証 RCE であり、2026年9月4日 から実際の攻撃での悪用が確認されています。Adobe は 2026年9月7日 に公式修正 APSB26-146 を公開しました。「StyleSmuggler IOC」「CVE-2026-75650」「APSB26-146」「VULN-39341」「Magento fc-cache malware」「Magento chronyd backdoor」「gvfsd-user Magento」「Magento GraphQL styles RCE」で検索してここにたどり着いた方、これがお探しのリポジトリです。
これは防御用ツールキットです。 公開された一次情報のインシデント報告に基づいて構築された検出シグネチャ、侵害スキャナ、および堅牢化・ブロックルールを収録しています。エクスプロイトコード、PoC トリガー、攻撃ペイロードを生成するものは一切含まれていません。それを探しているなら、このリポジトリは間違いです — パッチを適用し、調査に当たってください。
| 脆弱性 | StyleSmuggler(Sansecによる名称)— CVE-2026-75650 |
| ベンダー | Adobe(Magento Open Source、Adobe Commerce) |
| CVE | CVE-2026-75650、2026-09-07 に割り当て |
| Adobe のセキュリティ情報 | APSB26-146、2026-09-07 20:20 UTC 公開、優先度 1(最高) |
| 併せて必要なもの | APSB26-138(Adobe の 2026 年 9 月の定例 Commerce アップデート、分離パッチ 249-2026-09-001-CE、2026-09-08 リリース)。Adobe は VULN-39341 をこれに代えてではなく、これに加えて適用する必要があると述べています。 |
| CVSS | 10.0(3.1 および 4.0)— クリティカル。3.1 の完全なベクター: AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
| CWE | CWE-1336、テンプレートエンジンで使用される特殊要素の不適切な中和 |
| CISA KEV | 2026-09-08 に CISA の Known Exploited Vulnerabilities カタログに追加。 連邦文民行政機関(FCEB)の修復期限: 2026-09-11。CISA のエントリは、これがフォレンジック/IR トリアージを要するものとしてフラグを立てており、既知のランサムウェアキャンペーンでの使用は「不明」と記載されています。もはや Magento コミュニティだけの問題ではなく、連邦政府が追跡する、活発に悪用されている RCE です。 |
| 公式パッチ | 提供済み。 ホットフィックス VULN-39341。適用範囲は普遍的ではありません — 下の表を参照してください。 |
| 認証の要否 | 不要 — 未認証 |
| 公開エクスプロイトコード | Adobe/Sansec による公式 PoC はありませんが、裏付けとなる報道は、完全な攻撃チェーンの研究ラボによる再現と自称する公開 GitHub リポジトリ(2026-09-08 頃作成)に言及しています — 「公開エクスプロイトコードなし」という表現は見た目より弱いものです。docs/VULNERABILITY.md を参照してください。 |
| 影響を受けるバージョン | Sansec によりクリーンな Magento Open Source 2.4.7、2.4.8、2.4.9 で再現。最初に確認された被害者は 2.4.6-p15 を(以前のパッチで)完全に適用済みの状態で稼働していました |
| 悪用状況 | 2026-09-04 22:20 UTC 以降活発に悪用中。パッチリリース後も継続。2026-09-14 時点で、少なくとも 3 つの独立したツールキットが同じ侵入ポイントを悪用していることが確認されています。あるエクスプロイト追跡ネットワークは、9 月 9 日以降 500 以上の異なる送信元 IP を報告しています。サードパーティ WAF のテレメトリ(Imperva)は、観測された標的が小売(約 39.5%)、ライフスタイル(約 19.5%)、ヘルスケア(約 17.9%)に偏っていると報告しています — これは個々のベンダーの可視性のスナップショットであり、脆弱なストア全体の母集団に関する主張ではありません。 |
| 既知の Rust インプラント変種 | [kworker/u:8:0](9 月 4 日)→ fc-cache v2.1.4(9 月 6 日)→ chronyd v2.1.5(9 月 7 日)— 同一の攻撃者、同一のエージェント ID、バージョンは増加。chronyd ビルドは、cron エントリなしで、親プロセスが PID 1 の状態で自己再起動しているのが観測されています。 |
| 2 番目の無関係な攻撃者 | pub/media/catalog/product/cache/ 内の PHP ウェブシェル。その前に DNS 経由でデータを外部送信する偵察プローブが存在 — Rust インプラントとは独立、2026-09-07 に確認 |
| 3 番目の異なるツールキット | 2026-09-14 に確認。 コアフレームワークファイル vendor/magento/framework/App/View.php に直接編集されたリモートファイルインクルード型バックドアで、広告技術のトラッキングを装った Cookie(gl_google_advisor_824808)によって制御されます。オンデマンドでリモートペイロードを取得・実行し、その後一時ファイルを削除します — リクエスト間でディスク上に残るのは、ベンダーファイル内の改ざんされた 1 行だけです。 |
| メールを介さない起爆 | 2026-09-14 に確認。 2 番目のチェーンは、「支払い失敗」メールを一度もレンダリングすることなく、POST /paypal/transparent/response/(クエリ文字列内の PHP ソース)経由で完全なコード実行に到達します — マーカーは MGPROOF::/MGKWSIM::、kwc パラメータを通じた直接コマンド実行。メールのトリガーだけを中心に構築された緩和策では、これをカバーできません。 |
| 既知の配信ベクター | GraphQL の styles[] パラメータ、var/log/system.log に記録される無効なストアコード、Magento の顧客カスタムオプション経由でアップロードされたファイル、無関係な 2 番目の攻撃者による Store: ヘッダーインジェクション、/paypal/transparent/response/ のクエリ文字列内の PHP ソース(メール非依存) |
| 影響 | リモートコード実行 → 永続的な Rust ベースのバックドア、独立した PHP ウェブシェル、ステルス性の高いフレームワークレベルの RFI バックドア、Redis セッションの収集、app/etc/env.php 経由の認証情報/シークレットの漏洩 |
| 製品 | APSB26-146 でカバー | 公式修正なし |
|---|---|---|
| Adobe Commerce(B2B、Cloud を含む) | 2.4.4 – 2.4.9 | 2.4.4 未満 |
| Adobe Commerce B2B | 1.3.3 – 1.5.3 | 1.3.3 未満 |
| Magento Open Source | 2.4.6 – 2.4.9 のみ | 2.4.5 以下 |
サポート対象外の古いバージョンを使用している場合、同様に悪用可能であるにもかかわらず、
Adobe は修正プログラムを提供していません。選択肢については
docs/PATCHING.md を参照してください
— Adobe の Commerce 専用ホットフィックスパッケージではなく、専用の緊急リリース
(3.5.0)が提供されている Mage-OS ユーザー向けの注記も含まれています。
この情報は急速に変化します。 行動する前に一次情報源と照合してください:
Sansec のアドバイザリ および
Adobe のセキュリティ情報。
継続的なログについては docs/TIMELINE.md を参照し、ここを更新する際は
情報源を明記してください。
Magento 自身の GraphQL styles パラメータと、依存性注入ベースのファイルスキャンが、
ファイルベースの遅延実行プリミティブとして悪用されます。当初文書化された攻撃チェーンは
2 段階ですが — Sansec の 9 月 14 日の更新時点では — それが唯一の確認されたチェーンではなく、
起爆に必ずしも当初の第 2 段階が記述していたものを必要としません:
var/log/system.log、または
var/report/<hash>)に到達します。これは GraphQL の styles[] パラメータ、改変された
リクエストヘッダー、または(以下に示す 2 人目の無関係な攻撃者の場合は)Store:
ヘッダーを通じて密輸されます。getProcessedTemplate
パス)、Magento 自身の DI/コードスキャナが汚染されたファイルを include() できる
コードパスをたどり、攻撃者の PHP が実行されます。メールを開く必要はなく —
サーバー側でレンダリングされるだけで十分です — また、メール配信自体が失敗した場合でも
チェーンは発火し得ます。ツール不要の簡単な早期警告サイン:受信トレイに、生の未レンダリングの {{var ...}}
タグと .invalid で終わる顧客アドレスを含む、文字化けした「Payment Transaction Failed
Reminder」メールが届くことです。これは多くの場合、誰かがログを確認する前の、
最初の目に見える兆候です。
しかし、そのメールだけが実行に至る唯一の経路ではありません。 Sansec は、メールを
完全に省略する 2 つ目の独立した起爆チェーンを確認しました:クエリ文字列に PHP ソースを
仕込んだ POST /paypal/transparent/response/ です。これにより、MGPROOF::
(実行証明チェック、mgproof717.txt というファイルも伴う)や MGKWSIM:: を出力する
ペイロードが観測されています — 後者は、kwc リクエストパラメータで base64 エンコードされて
届いたものをそのまま実行する直接的なコマンド実行プリミティブであり、メールは一切関与しません。
失敗した支払いメールの監視や無効化だけに基づく緩和策は、この経路をカバーしません。
Sansec の更新では、同じ Rust インプラントキャンペーンに対する2 つ目の独立した悪用経路 も確認されました:セッションストレージを Redis からデータベースに移したストアでも依然として 侵害されていました — 同じ攻撃者の 2 回目の試行は数秒後に、代わりに Magento の 顧客カスタムオプション機能を通じてアップロードされたファイルを使って成功しました。 セッションストレージの移行だけでは修正になりません。
**また別件として、9月7日、Sansecは完全に無関係な攻撃者を発見した。**その攻撃者は
まったく同じStyleSmugglerの侵入経路を使いながら、はるかに単純なペイロードを用いていた。Magento自身の
商品画像キャッシュにPHPウェブシェルを投下したのである
(pub/media/catalog/product/cache/ss_<10hex>/sync_<10hex>.php)。その前段には
偵察用のプローブがあり、ペイロードをStore: HTTPヘッダーに隠し、調査結果をHTTPレスポンスではなく
DNS経由で外部に送信していた。Sansecによればこれは「既製のツール」であり、
持続的なキャンペーンではない。しかし、これは1台の脆弱なホストが
1つの脆弱性を通じて無関係な2件の侵入を抱えうることを意味する。Rustインプラントを
駆除しても、ストアがクリーンになったわけではない。
そして9月14日、Sansecは3つ目の、これらとはまた異なるツールキットを確認した。
これは新しいファイルを投下するのではなく、Magentoのコアベンダーファイル
(vendor/magento/framework/App/View.php)を直接編集し、クッキー(gl_google_advisor_824808)で
制御されるオンデマンドのリモートファイルインクルード型バックドアを追加していた。これは
広告技術のトラッキングを装って意図的に偽装されている。クッキーが存在すると、バックドアは
その値をURLとしてbase64デコードし、取得してレスポンスを/tmp/tmp.logに書き込み、
実行した直後に削除する。リクエスト間でディスク上に残るのは、ベンダーファイル内の
改ざんされた1行だけである。pub/mediaの一掃ではこれを決して
捕まえられない。ベンダーファイルの整合性を直接確認する必要がある。
Rustインプラント自体も進化している。当初の[kworker/u:8:0]に偽装した
ビルド(9月4日)に続き、NTPトラフィックに偽装してビーコン送信するfc-cacheに偽装した
ビルドv2.1.4(9月6日)が現れ、さらにchronydに偽装した再展開v2.1.5
(9月7日)が同一のインプラント、同一のエージェントIDで確認された。これは攻撃者が
公開される検知手法を回避すべく積極的に反復している証拠である。chronydビルドはまた、
cronエントリもなく、親プロセスIDが1の状態で自己再起動していることが観測されており、
これはリネームがcronによる起動ではなく自己開始されたものと整合する。このビルドにおいては、
空のcrontabはホストがクリーンである証拠にはならない。Sansecは、このインプラントが
永続化・偵察以外に武器化された証拠はまだ見ていないと述べているが、同じアクセス経路上で
無関係な攻撃者の動作するウェブシェル、そして今や3つ目のツールキットの動作するバックドアが
存在することを踏まえれば、これを安心材料と受け取るべきではない。