RYX

Blog

Shopifyのアプリ経由で偽の決済画面に飛ばされる攻撃|自分のストアを確かめる手順【2026年10月】

Shopify — 2026.10.19

← ブログ一覧に戻る

はじめに

  • 海外のShopifyストアで偽の決済画面への誘導が起きたと聞いて、自分のストアが心配
  • どのアプリが関係していて、何を確かめればいいのか知りたい
  • 被害に気づいたら、どこに連絡すればいいのか分からない

このような方のための記事です。

この記事では、2026年10月に海外のShopifyストアで起きた偽の決済画面への誘導について、開発元が認めている事実と、自分のストアで今日できる確認の手順を解説します。

2026年10月にShopifyのストアで起きたこと

  • ストアで「購入手続きへ」を押した買い物客が、Shopifyの決済画面に似せた偽のページに飛ばされ、カード情報を入力させられた
  • 不正なJavaScriptは、ストアに入っているアプリの設定を通って、ストアのページに読み込まれていた
  • 開発元が自ら認めているのは、HulkAppsの「Hulk Product Options」と、Logbaseの「Selleasy」の2本

最初に気づいたのは、海外の開発者のRoman Zippさんです。10月10日、ある店で買い物をしていて、カードの名義が名前の欄に自動入力されそうになったことでURLを確かめたところ、ストアとは無関係の「biliing.top」というドメインでした。調べると、Hulk Product Optionsのテーマ拡張機能が開発元のサーバーから「カスタムJavaScript」の設定を受け取り、ストアの全訪問者のブラウザで動かしていたそうです。

外部記事Shopify shops hit with ongoing Checkout Hijack attackShopify shops are being hit with a checkout hijack campaign through HulkApps/Swym/Selleasy Shopify extensions.romanzipp.comShopify shops hit with ongoing Checkout Hijack attack

HulkAppsはLinkedInで、不正な設定によってテーマ拡張機能が書き換えられたこと、Shopifyが拡張機能を一時的に止めてコードを取り除いたことを認めています。Selleasyの開発元のLogbaseは、内部のツールに不正にアクセスされ、10月13日の日本時間16時47分から24時まで、一部のストアの設定に悪意あるスクリプトが入っていたと説明しています。偽のページで買い物客が何を入力したかは把握できない、とも述べています。

外部記事Shopify tells Australian store to stay shut after hijacked extensions divert shoppersMalicious Javascript in add-ons sent shoppers to fake checkouts.itnews.com.auShopify tells Australian store to stay shut after hijacked extensions divert shoppers

オーストラリアの被害店はShopifyのサポートから、確認が取れるまでストアのパスワード保護を続けるよう求められ、数日間販売を止めました。どうやって設定が書き換えられたのかは、10月19日時点でどちらの開発元からも明らかにされていません。同じ手口の報告は他のアプリでも上がっていますが、開発元が認めていないものはここでは挙げません。

Shopifyの決済画面そのものが破られたわけではない

決済画面に表示を足すチェックアウトUI拡張は、決済画面から切り離されたサンドボックスで動き、ページのHTMLにも支払いの情報にも触れられない作りです。

外部記事Checkout UI extensionsBuild extensions that integrate into Shopify's checkout interface, including custom fields, upsells, and Thank you page experiences.shopify.devCheckout UI extensions

今回の攻撃はその手前で起きました。商品ページやカートで「購入手続きへ」のクリックを横取りし、決済画面に着く前に別のサイトへ送っていたのです。決済画面がどれだけ守られていても、ストアのページに読み込まれるアプリのJavaScriptが書き換えられると、お客さまは本物の決済画面にたどり着けません。

本来の流れと今回の流れの比較。本来は商品ページ・カートからShopifyの決済画面を経て注文完了。今回はアプリのJavaScriptがクリックを横取りし、別のドメインの偽の決済画面でカード情報を送らせてから本物の決済画面に戻していた

Roman Zippさんの解析では、偽のページはカード情報を送らせたあと、お客さまを本物の決済画面に戻していました。お客さまは注文が普通に終わったと思い、店側も気づきにくい作りです。

自分のストアが偽の決済画面に飛ばないか確かめる手順

  1. パソコンのブラウザでシークレットウィンドウを開く
  2. 自分のストアを開き、商品をカートに入れる
  3. カートで「購入手続きへ」を押す
  4. アドレスバーのドメインが、自分のストアのドメインかmyshopify.comのままかを確かめる
  5. 決済画面のロゴとストア名が自分の店のものかを確かめる
  6. ウィンドウを閉じ、新しいシークレットウィンドウを開いて、商品ページの「今すぐ購入」のボタンからも同じように確かめる
  7. スマホのブラウザでも、プライベートモードで同じことをする
開発ストアの決済画面。アドレスバーのドメインがストアのドメインのままで、その後ろに /checkouts/ が続いている

確かめるのは決済画面に着くところまでで、カード情報は入れないでください。偽のページは「checkout-confirm」「order-confirm」のように、それらしい名前のドメインを使っていました。名前に「checkout」と入っていても、自分のストアのドメインでなければ偽物です。

今回のスクリプトは、一度転送するとブラウザに印を残し、同じ人を二度は転送しない作りでした。普段のウィンドウで試すと、すでに印が残っていて本物の決済画面に進み、問題が無いように見えることがあります。確かめるたびにシークレットウィンドウを開き直してください。

一度確かめて問題が無くても、明日も大丈夫とは限りません。設定が外から書き換えられる場合、いつ入るかは店側には分からないからです。しばらくは週に1回でも同じ確認を続けると安心です。

アプリを見直すときに見るところ

ストアのページにJavaScriptを読み込むアプリ

まず、ストアの表側にJavaScriptを読み込んでいるアプリを把握してください。管理画面の「オンラインストア」を開き、公開中のテーマの「テーマを編集」を押してください。テーマエディタの左上にある「埋め込みアプリ」のアイコンを押すと、テーマに埋め込まれているアプリと、それぞれが有効か無効かが一覧で出ます。

テーマエディタの埋め込みアプリの一覧。左上のアイコン(1)を押すと、左のサイドバー(2)にアプリごとの埋め込みとオンオフの切り替えが並ぶ

外部記事help.shopify.com/ja/manual/online-store/themes/theme-structure/extend/appshelp.shopify.com

実務で関わっているストアでも、レビュー、お気に入り、ポップアップ、フォームのように表に何かを出すアプリは、ほとんどがこの埋め込みかアプリブロックで読み込まれています。使っていないアプリの埋め込みは無効にし、アプリごと外せるものは外してください。外すときの注意はアプリの本数と棚卸しの記事にまとめています。

アプリの管理画面の「カスタムJavaScript」の欄

今回の入り口は、アプリの管理画面にある「カスタムJavaScript」の欄でした。表示を細かく調整するために、店がJavaScriptを書き込める欄を用意しているアプリは少なくありません。入っているアプリの設定を開き、自分や制作会社が入れた覚えのないコードがないかを確かめてください。使っていない欄は空にしておくのが安全です。

権限の一覧だけでは分からない

Shopifyは10月17日の声明で、店はアプリの活動と権限を確認できると説明しています。「設定」→「アプリと販売チャネル」からアプリを開くと、そのアプリが読み書きできるデータの一覧が見られます。

ただ、今回の攻撃は注文や顧客のデータを読む権限を使ったものではありません。アプリが開発元のサーバーから受け取ったJavaScriptを、ストアのページで動かしただけです。権限の一覧が控えめなアプリでも、表にJavaScriptを読み込んでいれば同じことが起こりえます。権限の確認だけで安心せず、上の2つとあわせて見てください。

アプリのアカウントのパスワードと2段階認証

Shopifyの管理画面とは別に、アプリ側にもログインするアカウントがある場合があります。開発元への不正アクセスなのか、店のアカウントの乗っ取りなのかはまだ分かっていないので、Shopifyとアプリの両方のパスワードを変え、2段階認証を有効にしておいてください。辞めた人のスタッフアカウントが残っていれば、あわせて消します。

偽の決済画面に気づいたときの連絡先

  1. 「オンラインストア」→「各種設定」でストアにパスワードを掛け、販売を止める
  2. 疑わしいアプリの埋め込みを無効にする
  3. Shopifyのサポートに連絡する
  4. アプリの開発元に連絡する
  5. 偽のページのURLを報告する

オーストラリアの被害店の店主は、Shopifyより開発元からのほうが多くの情報を得られたと話しています。サポートへの連絡と同時に、開発元にも状況を聞いてください。

外部記事help.shopify.com/ja/questionshelp.shopify.com

偽のページのURLは、フィッシング対策協議会にメールで報告できます。報告が集まるとブラウザが警告を出すようになり、他の店のお客さまの被害も減らせます。

外部記事フィッシング対策協議会 Council of Anti-Phishing Japan | フィッシングの報告フィッシング対策協議会は2005年4月に設立され、フィッシング詐欺に関する事例情報、資料、ニュースなどの収集・提供、注意喚起、技術的・制度的検討などの活動を行っております。antiphishing.jp

その間に買い物をしたお客さまがカード情報を入れた可能性があるときは、案内の内容とタイミングを、決済代行会社やカード会社、専門家に相談したうえで決めてください。

さいごに

今回の被害は、Shopifyの決済画面ではなく、ストアのページに読み込まれるアプリのJavaScriptから起きました。シークレットウィンドウで「購入手続きへ」を押し、自分のドメインの決済画面に着くかを確かめるのは数分でできます。あわせて、埋め込みアプリの一覧と、アプリのカスタムJavaScriptの欄を見直してください。

アプリの見直しや、ストアに読み込まれているコードの点検は、お問い合わせからお気軽にご相談ください。

Contact

Shopifyのご相談はこちら

構築・移行・改修・運用改善まで。状況を伺って最短ルートをご提案します。

相談・見積もり無料 / 24時間以内に返信

相談する