質問編集履歴
1
追記及び修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
体系的に学ぶwebアプリケーションの作り方第2版の「4-2」入力処理とセキュリティの部分を読んでいたのですが、分からない部分があり質問させて頂きました。
|
2
2
|
|
3
3
|
ヌルバイト攻撃に対する対策についてなのですが、下記のように記述されていました。
|
4
|
-
「ヌルバイト攻撃に対する根本的な対策は、バイナリセーフの関数のみを用いてアプリケーションを開発することですが、現実にはそれは困難です。なぜなら、ファイル名のように仕様上ヌルバイトを許容しないパラメータがあるからです。」ここの部分なのですが、具体的にどのようなケースのことなのかが、分かりません。「仕様上ヌルバイトを許容しないパラメータ」があった方が、処理する側ではヌルバイトを気にする必要がない為、バイナリセーフでない関数を使用しても問題がないように思えます。
|
4
|
+
「ヌルバイト攻撃に対する根本的な対策は、バイナリセーフの関数のみを用いてアプリケーションを開発することですが、現実にはそれは困難です。なぜなら、ファイル名のように仕様上ヌルバイトを許容しないパラメータがあるからです。この為、アプリケーションの入り口でバイナリセーフの関数を用いて入力値のヌルバイトをチェックし、ヌルバイトがあればエラーにする」ここの部分なのですが、具体的にどのようなケースのことなのかが、分かりません。「仕様上ヌルバイトを許容しないパラメータ」があった方が、処理する側ではヌルバイトを気にする必要がない為、バイナリセーフでない関数を使用しても問題がないように思えます。
|
5
5
|
ここの部分について、少し混乱してしまっているため、どなたか詳しい方がいましたら、教えて頂けましたら幸いです。
|