質問するログイン新規登録

回答編集履歴

1

追記

2018/09/09 03:05

投稿

退会済みユーザー
answer CHANGED
@@ -2,4 +2,15 @@
2
2
 
3
3
  上記の条件で使用箇所が条件文内に限定されるのであれば、おかしな値や型もキャストされる前提なので、条件の分岐先が多少おかしくなると思いますが、それほど深刻なセキュリティリスクを抱えるケースは思い浮かびません。
4
4
 
5
- どちらかというと、セキュリティポリシーとして「正式なインターフェイス以外からの投稿を許容しない」とか「すべての投稿には意図があり、その意図をバリデーションとして記述する」といったものがあるかどうかに左右されると思います。
5
+ どちらかというと、セキュリティポリシーとして「正式なインターフェイス以外からの投稿を許容しない」とか「すべての投稿には意図があり、その意図をバリデーションとして記述する」といったものがあるかどうかに左右されると思います。
6
+
7
+ **追記**
8
+ バリデーションって、副次的にセキュアなシステムを補助しますが、本質的には「入力値が想定しているものであることの確認」です。
9
+ ですので、セキュリティを担保するには、実際に使用する箇所で値を「セキュアなもの」にして扱う必要があります。
10
+
11
+ 例としては
12
+ ・XSS 対策として出力時に「htmlspecialchars」でエスケープする
13
+ とか。
14
+
15
+ バリデーション=セキュリティの担保と考えるのは、本質からはちょっとズレています。
16
+ バリデーションの必要性は、「ポリシーとして入力値の想定をどう扱うか」が判断基準となります。