mikanmarusanのブログ

テクノロジーとかダイビングとか

JINS PCの件について考えてみた

おさらい

入力フォームに改ざん、外部に情報送信の可能性:JINSに不正アクセス、約1万2000件のクレジットカード情報流出の可能性 – @IT

JINS PCからの説明によると、流出の可能性があるのは、

  • カード番号
  • カード名義人名
  • セキュリティコード(カードの裏面などにある3〜4桁の数字)
  • カード有効期限

ネットだと、カード番号を暗号化せずに保存していたのでは?とか、セキュリティコードを保存していたのか!とかいろんな指摘を受けていたようだけれども、入力フォーム自体が改ざんされて、ユーザーが入力した情報が外部に送信されてたようだ。

JINSの不正アクセスによるカード情報流出、7件の不正利用を確認

おそらく、JINS PCの脆弱性を突いたXSSかなと推測してます。

問題はこれから? - チャージバックの発生

JINS PCの今回の件のように、流出したカード情報はどうなるのか?を考えてみる。

クレジットカードの対面取引では、署名やカードの暗証番号を使い、カードの所有者しか再現できないもしくは知り得ない情報を使う事で、カードの正規所有者であることを認証している。

一方、インターネット決済のような非対面取引では主に4つの項目(カード番号、カード名義人名、セキュリティコード、カード有効期限)が利用されているケースが多い。したがってクレジットカード情報が流出すると第三者利用(不正利用)されてしまう可能性がある。

実際にJINSの件でも、7件の不正利用が確認されているらしい(2013/03/18現在)

では、第三者による不正利用が起きるとどうなるのか?この場合はチャージバックが発生する。チャージバックとは、ユーザー(=カードホルダー)が不正利用等により利用代金の決済に同意しない場合に、クレジットカード会社が加盟店(お店)に対して支払いを拒絶するというもの

もちろん不正利用だけでなく、サービスそのものに不備があったりしてユーザーが支払いに同意せずにチャージバックになる(=お店側に不備がある場合)もあるけれども、不正利用のチャージバックはお店側にとってかなり痛い。

じゃ、どうすればいいの?

このままだとインターネットで商売したい加盟店はつらい。じゃどうしたらいいの?
例えば3Dセキュアによる認証をするという方法がとれる。

3Dセキュアとは、カード情報以外に各クレジットカード会社から発行されたインターネット専用のIDやパスワードを、ユーザーが入力しクレジットカード決済を行う仕組み。

下記のブランドあたりで提供されてたりします。

  • Visa: Visa認証サービス(三井住友VisaだとVPass)
  • Master: SecureCode
  • JCB: J/Secure

3Dセキュアを利用すれば、盗難されたり情報が流出したカードや偽造されたカードに対しても、本人しか知り得ないID/パスワードを入力するため不正利用の可能性を大きく減らすことができる。

とはいえ、3DセキュアのID/パスワードをユーザーが忘れてしまうと購入機会を損失してしまう可能性もあるし、そもそもブランドによっては対応していないところも多いので、日本ではあまり進んでいない(海外だと結構使われている)印象。

まとめ

  • JINSの件は、入力フォーム自体が改ざんされてユーザーの入力情報が外部に
  • 流出したカード情報は、非対面取引で不正利用される可能性が高い
  • 不正利用はチャージバックとなり加盟店(お店)は痛い
  • 3Dセキュアを利用すれば不正利用を減らすことができるかも、ただしデメリットもある。
    • もっと流行ればいいのに!