なぜ? クレカの「セキュリティコード」まで漏洩する事件が相次ぐ
最近、個人情報が漏洩する事件が相次いでいる中で、クレジットカードの「セキュリティコード」まで漏洩していることに驚きの声が上がっています。
本来、セキュリティコードはシステム上に保存していないはずですが、なぜそれが漏洩してしまうのでしょうか。を解説します。
攻撃されたのはデータベースではなく入力フォームか
最近のオンラインストアでは、3桁または4桁のセキュリティコードはもちろん、クレジットカード情報自体を自社で取り扱わない仕組みを導入するところが増えています。
しかし、今回9万件超の流出が話題となっているタリーズは、セキュリティコードを含む5万件超のクレジットカード情報が漏洩した可能性があると説明しています。
他にも同様の事例は相次いでおり、たとえば全国漁業協同組合連合会の通販サイトではセキュリティコードを含む1万件超のクレジットカード情報が漏洩した可能性があると発表されています。
一見すると、オンラインストアのサーバー側にセキュリティコードが保存されており、それが漏洩したように感じるところですが、実際には異なるようです。
タリーズ側は「第三者の不正アクセスにより、ペイメントアプリケーションの改ざんが行われた」と説明しており、入力フォームを狙った「Webスキミング」ではないかという指摘があります。Xでは不審なコードの存在を指摘した投稿が話題になっています。
問題となった「slick.min.js」とは、Webサイトの画像をスライドさせるのに便利なJavaScriptのライブラリです。圧縮されており、ソースコードを見ただけでは中身が分かりにくくなっています。こうした場所にコードを紛れ込ませるのは、Webスキミングの常套手段という印象を受けます。
実際に情報が漏洩するのは、会員登録や買い物をする際、クレジットカード番号やセキュリティコードをフォームに入力するタイミングと考えられます。
なぜそこが狙われるかというと、どんなにサーバー側で暗号化などの対策をしていたとしても、フォーム画面には利用者が入力した住所や氏名、クレジットカード情報といったデータが無防備に存在しているからです。
先ほどの不審なコードは、フォームに入力された内容を悪意のある第三者のサーバーに送信しているとみられます。利用者のスマホやパソコンから第三者に直接送られるので、オンラインストア側が通信内容を監視していたとしても検出することはできません。
また、会員登録や買い物など本来の処理は正常に終わります。カード決済や商品の配送には何も影響がないことも、気付きにくい要因の1つといえます。
一方、攻撃者にとっては、改ざんの糸口さえあれば技術的な難易度はそれほど高くありません。簡単かつ見つかりにくい攻撃手法として、猛威を振るい続けているのが現状といえるでしょう。
利用者ができる対策は?
フォームの改ざんといっても、画面の見た目やアドレスバーのURLに変化があるわけではなく、利用者側で「見破る」ことはできません。
その中でできることがあるとすれば、クレジットカード情報を入力する機会をなるべく減らすことは良い習慣といえます。
たとえば、企業が独自に運営するストアではなく、楽天市場やAmazon.co.jpに出店した公式ストアがあれば、そちらを利用することですでに登録済みの支払い情報を使って買い物ができます。
また企業独自のストアを使う場合でも、PayPayや楽天ペイ、Amazon Payなどのオンライン決済に対応していれば、クレジットカード情報の新規入力を避けることができます。
ただ、どんなに注意していたとしてもクレジットカードの不正利用を完全に避けることはできません。最近は不正利用を検知する仕組みが進化しつつあるものの、利用者側で定期的に明細を確認することは引き続き重要です。
使わないときにはアプリから一時的にロックできるカードもあります。Revolutには1回だけ使える使い捨てのカード番号を発行する機能があり、もっと広まってほしいところです。