雑記Rogue

書くたび言うことが変わる不思議ダンジョン

そのネットショップで、クレジットカードのセキュリティコードは使用されていないかもしれない問題

先日、あるネットショップで買い物をした。

そこは自分の住んでいる場所だとタイミングさえ合えば当日届くので、よく利用させてもらっている。

 

このサイトに限らず、クレジットカードを使って購入する際に「セキュリティーコード」という3−4桁の数字を入力することがある。

いつもはクレジットカードの裏面を確認してその数字を入力しているのだが、その時は記憶を頼りに入力し、そのまま「注文を確定する」ボタンを押して注文してしまった。

 

ボタンを押した後で気になってクレジットカードを確認したところ、123を132のように数字の並び順を間違えて入力していた。もう一度注文し直しかぁ〜などと思っていたら、いつも通りに「クレジットカード決済のご利用確認が完了いたしました」という確認メールが届いたのだ。

 

確実に予定された日に届いて欲しい商品だったこともあり、一体どんな状態になっているのかをお問い合わせ窓口へ問い合わせしてみた。

「セキュリティコードのチェックはおこなわれているのか」と質問をしたところ、「セキュリティコードの入力がない場合や正しくない場合には、利用照会に時間がかかる場合や、承認が得られにくい場合がある」との回答をいただいた。

 

「時間がかかったり承認が得られにくい場合がある」ということから想像すると、数字の一致以外でも何かしらの判断基準がありということだ。たまたま今回入力したセキュリティーコードがアナグラムになっていたことで、「これは入力ミスだな」などと想像してくれたのだろうか?

 

クレジットカードの決済処理なので、この判断基準はクレジットカード会社に聞いてみるのが良さそうだ。

そう考えて、今度はそちらに問い合わせをしてみた。

 

すると、承認要求データにセキュリティコードが含まれていた場合、正しくない値だと承認できない仕組みになっているとのことだった。今回のように異なるセキュリティーコードを入力したのに承認が通るというのは、承認要求データにセキュリティコードが含まれていないことが考えられるそうだ。

 

この出来事だけから推測すると、このネットショップでは、セキュリティコードを入力しても、認証には使用されていない・送信されていないことになる。

 

もちろん、「パスワード入力時のミスの回数」のように、その情報を公開することで不正行為が働きやすくために、公にはしていない仕様がある可能性はある。

それでも、少なくとも1回はセキュリティコードが一致しなくても認証でき、商品が購入できた。

 

そもそもの話として、カード番号と有効期限だけで認証しているネットショップも多く、認証の足並みも揃っていない。だから、ここでセキュリティコードが利用されていてもされていなくても、実際のところ "セキュリティ" に差はないような。そう考えて、その後も利用させてもらっている。

 

しかし、一見使用しているかのように見えるのに使われてないというのは、ちょっとなぁ・・・という気がしてならない。

 

体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践

体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践