ECサイトや購入ページに設定されている入力フォームにクレジットカードや個人情報を入力したことはありませんか?実はこの入力フォームを悪用した攻撃が目立って増加してきています。それが「フォームジャッキング攻撃」です。
フォームジャッキング攻撃は、正規サイトの入力フォームに悪意のあるスクリプトを埋め込んで、フォームの送信内容を悪意のある第三者に不正に送信させる手口です。ランサムウェアやクリプトジャッキングなどに代わり近年、増加傾向にあります。
今回はフォームジャッキングの概要と被害実例、そして具体的な対策方法について紹介します。
フォームジャッキングとは
フォームジャッキングとは悪質なJavaScriptコードを入力フォームが含まれているページに仕掛けて、ECサイトの決済ページや購入ページからクレジットカード情報などを盗み出そうとする手口の攻撃のことを言います。
フォームジャッキングは”WEB版のスキミング”
クレジットカードの情報を不正に入手する攻撃として「スキミング」と呼ばれる攻撃が知られています。これは「スキマー」と呼ばれるクレジットカード情報を不正に入手する装置を使って、同じ情報を持つ偽造カードを作り不正利用する犯罪行為です。ATMのカード差込口にスキマーが仕掛けられたり、利用者の手元が録画されるような小型のカメラが設定されたりすることで、クレジットカードの情報が盗まれてしまうのです。
フォームジャッキングはブラウザ上で行われるスキミング行為であることから「Web版スキミング」と呼ばれることもあります。
増加し続けるフォームジャッキング攻撃
シマンテック社の調査によると、フォームジャッキング攻撃を受けたWebサイトは月平均では4800サイト以上になり、2018年はエンドポイントで370万件以上のフォームジャッキング攻撃をブロックしたと発表しています。そのうちの約3分の1はオンラインショッピングの利用が多い11月と12月に集中していたそうです。
フォームジャッキングは新しい攻撃手法ではありませんが、2018年ごろから大規模かつ巧妙になってきており、被害件数が増加傾向です。その背景には、ランサムウェアやクリプトジャッキングなどからの利益の減少があげられます。攻撃者の新しい収入源としてフォームジャッキングが行われているわけです。
フォームジャッキングにより盗まれたクレジットカード情報はダークウェブのような闇市場において最高45ドルで販売されるとも言われています。不正に入手された情報が販売され続ける限り、2019年以降もフォームジャッキング攻撃が続くことが予想されます。
フォームジャッキングの仕組み
フォームジャッキングの仕組みは次のイラストのような流れで行われます。
攻撃者はECサイトに設置されている購入フォームに不正なJavaScriptのコードなどを仕組みます。ECサイトのユーザーは商品を購入するために、購入フォームに個人情報やクレジットカード情報を入力します。フォームの入力を終えて「送信」ボタンをクリックすると、フォームに入力された情報はECサイトに受信されるだけでなく、攻撃者にも不正に送信されてしまいます。これがフォームジャッキングの仕組みです。
また攻撃者は不正なコードをフォームに仕組むための方法としてサプライチェーン攻撃を利用することがあります。
サプライチェーン攻撃とはソフトウェアの開発過程においてマルウェアに感染させたり、バックドアを仕込んだりしておく手法のことです。ハッキンググループ「Magecart」はサプライチェーン攻撃を利用してWebサイトに侵入し、フォームに不正なコードをたびたび仕組んでいます。
フォームジャッキングの被害事例
MagecartはNewegg社やBritish Airways社など大手のECサイトを標的としてフォームジャッキング攻撃を起こしています。
オンラインショップ「Newegg」のクレジットカード流出事件
セキュリティ企業RiskIQがアメリカ時間9月19日に、Magecartが悪意のあるコードをNeweggの決済システムに仕組み、クレジットカードを盗んだ疑いがあると発表しています。
RiskIQとサイバーセキュリティ企業Volexityとともに行った調査によると、8月14日から9月18日まで、不正なコードがNeweggにサイト上で実行されていた可能性があると判明しました。攻撃の対象はデスクトップユーザーとモバイルユーザーの両方ですが、実際に被害にあった顧客の数は明らかになっていません。
参照英航空大手の情報流出関与のハッカー、米ネットショップNeweggの顧客カード情報盗難か/ZDNet Japan
航空会社「British Airways」の入力フォーム情報流出事件
英国の航空会社British AirwaysもMagecartによりシステムに侵入され、38万人以上のユーザーのカード情報が盗まれたと発表しました。技術的な詳細は非公開ですが、攻撃者はBritish Airways社のWebサイトとモバイルアプリから、2018年8月21日から9月5日までのあいだ情報を盗難したと同社は発表しました。
参照British Airwaysの情報流出、Ticketmaster事件のハッカーグループが関与か/ZDNet Japan
このケースではクレジットカード番号や有効期限だけでなく、不正利用を防ぐための3桁のセキュリティコードまで盗まれたと報じられています。
Neweggの事件とBritish Airwaysの事件はともにMagecartによる攻撃であり、手口も似通っています。どちらの事件でもWebサイトに少量のJavaScriptを追加し、偽装されたドメインを使用してカード情報がMagecartのサーバーへと送信されていました。
フォームジャッキングに有効な対策
フォームジャッキング攻撃は、フォームを利用する正規のユーザーからは、フォームを利用した時点では被害にあったことが気づきにくいことが特徴です。それではフォームジャッキングの有効な対策とはどのようなものでしょうか。これは大きくサーバーサイドの対策とクライアントサイドの対策の2つに分類できます。
サーバーサイドの対策
フォームジャッキングはサーバーサイドでの対策が重要です。特にECサイトの運営において、以下の4つの点に注意することが重要です。
- 改ざんがすでに行われていないか
- 管理画面のURLが推測されやすいものになっていないか
- 管理画面へのアクセス制限が適切に行われているか
- サーバーやCMSなどのセキュリティ対策が適切に行われているか
まずは上記4点について対策を行いましょう。
購入フォームや購入確認画面に不正なコードが発見された場合は、すでにフォームジャッキングによる攻撃対象にされていると考えられます。ただちにWebサイトを停止し、セキュリティの専門家などに相談することが必要です。
また外部から管理画面へのアクセスが容易にできる状態だと、パスワードの総当たり攻撃などにより、不正にログインされる可能性が発生します。これはIPアドレス制限やBasic認証なども活用することで、最低限の対策を取ることは可能です。
またWebサーバーで動作しているソフトウェアやミドルウェアに脆弱性が発覚したとき、速やかにバージョンアップを行い、脆弱性への対応が適切に行われる環境を構築することも重要です。
クライアントサイドの対策
パソコンやスマートフォン向けのセキュリティ対策ソフトを導入がクライアントサイドでの対策のかなめとなります。セキュリティ対策ソフトの機能により、不正なスクリプトが仕組まれているフォームはブロックされます。セキュリティ対策ソフトはただ導入するだけでなく、リアルタイムの監視や定期的なアップデートが必要不可欠です。
まとめ
フォームジャッキングの概要と仕組み、そして具体的な事例と対策方法について紹介しました。冒頭で紹介したように、ランサムウェアやクリプトジャッキング攻撃に代わり、フォームジャッキングの被害が増大しています。これは闇市場においてクレジットカード情報が高値で売れることが主な原因です。
ここではフォームジャッキングに関してサーバーサイドとクライアントサイドの対策を紹介してきました。しかしクレジットカード情報が闇市場で取引されるという現状そのものを解決しないかぎり、攻撃者はフォームジャッキングに限らず、様々な方法で不正に情報を入手しようとするでしょう。
ダークウェブを始めとする闇市場を撲滅させることは困難かもしれません。しかしインターネットがユーザーにとって安心で快適な環境であることは、これからも求められていくでしょう。そのためにはしっかりとしたセキュリティ対策は必要不可欠です。