質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.34%
セキュリティー

このタグは、コンピューターシステムの安全性やデータの機密性に関連したトピックの為に使われます。

Q&A

2回答

367閲覧

クレジットカード登録に失敗した場合に表示させるエラーメッセージについて

ruuuu

総合スコア176

セキュリティー

このタグは、コンピューターシステムの安全性やデータの機密性に関連したトピックの為に使われます。

0グッド

2クリップ

投稿2025/01/05 02:41

編集2025/01/05 03:12

クレジットカード登録に失敗した際のエラーメッセージの表示内容についてですが、仮にクレジットカード番号が間違っていた場合、「指定されたカード番号が正しくありません」と表示させることはセキュリティ上問題ないでしょうか。
「入力内容が間違っています」などと表示させることも考えましたが、有効期限やセキュリティコード、名前の他項目も確認する手間が増える為、直接表示させた方が良いと思いました。
ご助言頂けましたら幸いです。
[追記]
クレジットカード登録は以下のAPIを使用を考えていました。
https://docs.fincode.jp/develop_support/error

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TakaiY

2025/01/05 03:05

「クレジットカード番号が間違っていた」というのは、どういう状況でしょう? 必要な情報を得たあと、クレジットカード会社に情報を問い合わせ結果を元に動作することになると思うのですが。
ruuuu

2025/01/05 03:14 編集

追記しました。クレジットカード登録は、fincode APIを使用する想定です!
meg_

2025/01/05 03:31

> 有効期限やセキュリティコード、名前の他項目も確認する手間が増える為、直接表示させた方が良いと思いました。 数項目なら多すぎるとは思いませんが。
ruuuu

2025/01/05 03:36

手間が増えるというか、どこに問題があるかが分からないのではないかと思いました。というのも実装していた際、バリデーションが通過しているため、使用できないクレジットカード番号であることが分かるまでにバックエンド側(fincode側)から返されているエラーメッセージを確認するまで使用できない理由がはっきりしなかったといった経緯がありました。
tmp

2025/01/05 04:13

通常の入力ミスだけでなく、不正なカード番号をわかってて使用する人のケースでも考えましょう。 詳しく表示するってことは、悪意ある相手に情報を与えることになります。
meg_

2025/01/05 05:39

> 手間が増えるというか、どこに問題があるかが分からないのではないかと思いました。 自分のカード情報を入力するのに入力ミスに気付かないことがあるのでしょうか?大事な情報なのですから登録者自身に確認させるべきではないでしょうか?対面で身分確認できているなら詳しく教えてあげても良いかもしれませんが。
guest

回答2

0

仮にクレジットカード番号が間違っていた場合、「指定されたカード番号が正しくありません」と表示させることはセキュリティ上問題ないでしょうか。

クレジットカード番号や有効期限、セキュリティーコード等の値の**書式(フォーマット)**に関するエラー内容に限って返すべきであると考えます。

「値の書式に関するエラー」とは、以下のようなものです。
・桁数が不足・超過している。
・使用できない文字(例:全角数字や記号等)が入力されている。

なぜなら、これらはクレジットカードに関する公知のフォーマットに関するチェックであり、これらのエラーに関する情報を入力者に与えても特段セキュリティに影響を与えないからです。

(実際、クレジットカードのチェックディジットすら、ネットで調べれば簡単に計算式を知ることができます)

逆に上記以外の情報、たとえばカード番号は正しいが有効期限が切れているとか、有効期限内であるがセキュリティコードが間違っているとか言った情報は、ユーザに個別具体的に知らせず、まとめて「入力されたカード情報は無効です」などのメッセ―ジにした方がいいです。

なぜなら、これらを具体的に知らせると、ブルートフォース攻撃に対する耐性を相対的に低下させてしまうことになるためです。

仮に、3回以上正しくないデータの登録が試行されたら24時間同一アカウントや同一IPからの入力を一切受け付けない等の対策がなされていれば、個別具体的なエラーを知らせてもブルートフォース攻撃は現実的な時間では成立しにくいから大丈夫という考え方はあるかもしれません。
しかしながら個別具体的なエラーメッセージを与えることはその分セキュリティを犠牲にすることになるため、やはり避けた方が良いでしょう。


なお上記は完全に理想論です。一般的な実装例についてもある程度は把握していますが、ここでは言及しません。(なぜなら質問者さんは「~セキュリティ上問題ないでしょうか」と質問しているからです)。実装例については、別質問を立てるか、質問者さんの方で調べた上で判断してください。

投稿2025/01/05 06:30

編集2025/01/05 06:50
patapi

総合スコア874

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ruuuu

2025/01/05 18:19 編集

ご回答ありがとうございます。 やはり、入力内容が誤りがあるとの旨を表示させるのが無難なようですね。 どこかのサービスかは覚えていないのですが、具体的にどこに間違いがあるかが表示された気がしていて、具体的な内容を表示させても良いのではないかと考えていました。
guest

0

極端な例で言うと、銀行のATMで暗証番号が1桁だけ誤っていたときに、
・暗証番号が間違っています
・暗証番号の1-3桁目は合っていますが、4桁目が間違っています
のどちらのメッセージを出すかを迷っているのと大差ない話かと思います。

「1-3桁目は合っていることを教えてあげた方がユーザーに親切なので、そうすべき」に賛成する人はいないかと思います。それと同じでしょう。

投稿2025/01/05 12:07

otn

総合スコア85989

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ruuuu

2025/01/05 18:17

ご回答ありがとうございます。 やはりセキュリティ的に入力内容が誤りがあるとの旨を表示させるのが無難なようですね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.34%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問