クレジットカードの番号を盗む方法として最近聞くのが、


pay_jp_usage_soyshop3


クレジットカード支払いが可能なネットショップで、様々なカード情報を試してみるというブルードフォースアタック(総当り攻撃)のカード版のような話がある。

SOY CMSで総当たり攻撃に対応してみた

クレジットマスター - Wikipedia


ネットショップを設置したサーバはもちろん、クレジットカード代行会社のサーバの負担は大きいだけでなく、オーソリ毎に使用料が発生する代行会社のサービスを利用している場合、攻撃を試みられる度に費用が発生して、カード情報の特定をされなかったとしても使用料の面で数百万の請求があったという悲惨な話も聞く。

※オーソリは使用するカードの信用情報を調べる処理のことを指す

※ネットショップではカード番号を入力して送信して注文する一連のフローのこと


こんなことをされたら洒落にならないので、前回のSOY Inquiryで悪質なお問い合わせをブロックする機能を追加しましたの際の攻撃が良い機会ということで、クレジットカード支払いの方も何らかの対応をしてみた。


対応した内容は、


pay_jp_usage_soyshop3


カート内の諸々の対応を終え、クレジットカードの入力画面が表示された際、不自然にリダイレクトがあったことが確認された場合に


credit_card_info_steal_try_ban


このようにページを閲覧しているIPアドレスから再びアクセスがあった場合はカードの使用を禁止する。


PAY.JPクレジットモジュールでは非同期でカード情報を送信するため、PAY.JPクレジットモジュールは更にモジュール内でもトライ回数を記録して、一定のトライ回数を超えた場合はカートの使用を禁止する。

SOY ShopのPAY.JPクレジットカード支払いモジュールでカード情報非通過化対応をしました


これで運営しているネットショップが加害者側になる可能性は大きく減ったわけだ。

この対応だけではまだ十分ではないので、ぼちぼち強化していくことにしよう。


今回対応分を含んだパッケージは下記のサイトからダウンロード出来ます。

https://saitodev.co/soycms/soyshop/