回答編集履歴
9
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
> 仮にクレジットカード番号が間違っていた場合、「指定されたカード番号が正しくありません」と表示させることはセキュリティ上問題ないでしょうか。
|
2
2
|
|
3
|
-
クレジットカード番号や有効期限等の**
|
3
|
+
クレジットカード番号や有効期限、セキュリティーコード等の値の**書式(フォーマット)**に関するエラー内容に限って返すべきであると考えます。
|
4
4
|
|
5
5
|
「値の書式に関するエラー」とは、以下のようなものです。
|
6
6
|
・桁数が不足・超過している。
|
8
test
CHANGED
@@ -19,4 +19,4 @@
|
|
19
19
|
|
20
20
|
---
|
21
21
|
|
22
|
-
なお上記は完全に理想論です。一般的な実装例についてもある程度は把握していますが、ここでは言及しません。質問者さんの方で調べた上で判断してください。
|
22
|
+
なお上記は完全に理想論です。一般的な実装例についてもある程度は把握していますが、ここでは言及しません。(なぜなら質問者さんは「~セキュリティ上問題ないでしょうか」と質問しているからです)。実装例については、別質問を立てるか、質問者さんの方で調べた上で判断してください。
|
7
test
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
・桁数が不足・超過している。
|
7
7
|
・使用できない文字(例:全角数字や記号等)が入力されている。
|
8
8
|
|
9
|
-
なぜなら、これらはクレジットカードに関する公知のフォーマットに関するチェックであり、これらの
|
9
|
+
なぜなら、これらはクレジットカードに関する公知のフォーマットに関するチェックであり、これらのエラーに関する情報を入力者に与えても特段セキュリティに影響を与えないからです。
|
10
10
|
|
11
11
|
(実際、クレジットカードのチェックディジットすら、ネットで調べれば簡単に計算式を知ることができます)
|
12
12
|
|
@@ -17,3 +17,6 @@
|
|
17
17
|
仮に、3回以上正しくないデータの登録が試行されたら24時間同一アカウントや同一IPからの入力を一切受け付けない等の対策がなされていれば、個別具体的なエラーを知らせてもブルートフォース攻撃は現実的な時間では成立しにくいから大丈夫という考え方はあるかもしれません。
|
18
18
|
しかしながら個別具体的なエラーメッセージを与えることはその分セキュリティを犠牲にすることになるため、やはり避けた方が良いでしょう。
|
19
19
|
|
20
|
+
---
|
21
|
+
|
22
|
+
なお上記は完全に理想論です。一般的な実装例についてもある程度は把握していますが、ここでは言及しません。質問者さんの方で調べた上で判断してください。
|
6
test
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
|
11
11
|
(実際、クレジットカードのチェックディジットすら、ネットで調べれば簡単に計算式を知ることができます)
|
12
12
|
|
13
|
-
逆に上記以外の情報、たとえばカード番号は正しいが有効期限が切れているとか、有効期限内であるがセキュリティコードが間違っているとか言った情報は、ユーザに個別具体的に知らせず、まとめて「入力
|
13
|
+
逆に上記以外の情報、たとえばカード番号は正しいが有効期限が切れているとか、有効期限内であるがセキュリティコードが間違っているとか言った情報は、ユーザに個別具体的に知らせず、まとめて「入力されたカード情報は無効です」などのメッセ―ジにした方がいいです。
|
14
14
|
|
15
15
|
なぜなら、これらを具体的に知らせると、ブルートフォース攻撃に対する耐性を相対的に低下させてしまうことになるためです。
|
16
16
|
|
5
test
CHANGED
@@ -12,8 +12,8 @@
|
|
12
12
|
|
13
13
|
逆に上記以外の情報、たとえばカード番号は正しいが有効期限が切れているとか、有効期限内であるがセキュリティコードが間違っているとか言った情報は、ユーザに個別具体的に知らせず、まとめて「入力値が無効です」というメッセ―ジにした方がいいです。
|
14
14
|
|
15
|
-
なぜなら、これらを具体的に知らせると、
|
15
|
+
なぜなら、これらを具体的に知らせると、ブルートフォース攻撃に対する耐性を相対的に低下させてしまうことになるためです。
|
16
16
|
|
17
|
-
仮に、3回以上正しくないデータの登録が試行されたら24時間同一アカウントや同一IPからの入力を一切受け付けない等の対策がなされていれば、個別具体的なエラーを知らせても
|
17
|
+
仮に、3回以上正しくないデータの登録が試行されたら24時間同一アカウントや同一IPからの入力を一切受け付けない等の対策がなされていれば、個別具体的なエラーを知らせてもブルートフォース攻撃は現実的な時間では成立しにくいから大丈夫という考え方はあるかもしれません。
|
18
18
|
しかしながら個別具体的なエラーメッセージを与えることはその分セキュリティを犠牲にすることになるため、やはり避けた方が良いでしょう。
|
19
19
|
|
4
test
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
|
13
13
|
逆に上記以外の情報、たとえばカード番号は正しいが有効期限が切れているとか、有効期限内であるがセキュリティコードが間違っているとか言った情報は、ユーザに個別具体的に知らせず、まとめて「入力値が無効です」というメッセ―ジにした方がいいです。
|
14
14
|
|
15
|
-
なぜなら、これらを具体的に知らせると、リバースブルートフォース攻撃を
|
15
|
+
なぜなら、これらを具体的に知らせると、リバースブルートフォース攻撃に対する耐性を相対的に低下させてしまうことになるためです。
|
16
16
|
|
17
17
|
仮に、3回以上正しくないデータの登録が試行されたら24時間同一アカウントや同一IPからの入力を一切受け付けない等の対策がなされていれば、個別具体的なエラーを知らせてもリバースブルートフォース攻撃は現実的な時間では成立しにくいから大丈夫という考え方はあるかもしれません。
|
18
18
|
しかしながら個別具体的なエラーメッセージを与えることはその分セキュリティを犠牲にすることになるため、やはり避けた方が良いでしょう。
|
3
test
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
> 仮にクレジットカード番号が間違っていた場合、「指定されたカード番号が正しくありません」と表示させることはセキュリティ上問題ないでしょうか。
|
2
|
+
|
1
3
|
クレジットカード番号や有効期限等の**値の書式**に関するエラー内容に限って、返しても問題はないと考えます。
|
2
4
|
|
3
5
|
「値の書式に関するエラー」とは、以下のようなものです。
|
2
test
CHANGED
@@ -6,6 +6,8 @@
|
|
6
6
|
|
7
7
|
なぜなら、これらはクレジットカードに関する公知のフォーマットに関するチェックであり、これらのチェックを行っても特段セキュリティに影響を与えないからです。
|
8
8
|
|
9
|
+
(実際、クレジットカードのチェックディジットすら、ネットで調べれば簡単に計算式を知ることができます)
|
10
|
+
|
9
11
|
逆に上記以外の情報、たとえばカード番号は正しいが有効期限が切れているとか、有効期限内であるがセキュリティコードが間違っているとか言った情報は、ユーザに個別具体的に知らせず、まとめて「入力値が無効です」というメッセ―ジにした方がいいです。
|
10
12
|
|
11
13
|
なぜなら、これらを具体的に知らせると、リバースブルートフォース攻撃を許すことになるためです。
|
1
test
CHANGED
@@ -2,13 +2,13 @@
|
|
2
2
|
|
3
3
|
「値の書式に関するエラー」とは、以下のようなものです。
|
4
4
|
・桁数が不足・超過している。
|
5
|
-
・
|
5
|
+
・使用できない文字(例:全角数字や記号等)が入力されている。
|
6
6
|
|
7
7
|
なぜなら、これらはクレジットカードに関する公知のフォーマットに関するチェックであり、これらのチェックを行っても特段セキュリティに影響を与えないからです。
|
8
8
|
|
9
9
|
逆に上記以外の情報、たとえばカード番号は正しいが有効期限が切れているとか、有効期限内であるがセキュリティコードが間違っているとか言った情報は、ユーザに個別具体的に知らせず、まとめて「入力値が無効です」というメッセ―ジにした方がいいです。
|
10
10
|
|
11
|
-
なぜなら、これらを具体的に
|
11
|
+
なぜなら、これらを具体的に知らせると、リバースブルートフォース攻撃を許すことになるためです。
|
12
12
|
|
13
13
|
仮に、3回以上正しくないデータの登録が試行されたら24時間同一アカウントや同一IPからの入力を一切受け付けない等の対策がなされていれば、個別具体的なエラーを知らせてもリバースブルートフォース攻撃は現実的な時間では成立しにくいから大丈夫という考え方はあるかもしれません。
|
14
14
|
しかしながら個別具体的なエラーメッセージを与えることはその分セキュリティを犠牲にすることになるため、やはり避けた方が良いでしょう。
|