これは入力がユーザーに印刷されるかどうかによって異なりますか?私の場合、私は入力をユーザーに返す必要があります(コメントとバイオ)。XSSを防ぐためにstriptags()とhtmlspecialchars()の両方を使用する必要がありますか?
ありがとうございました!
これは入力がユーザーに印刷されるかどうかによって異なりますか?私の場合、私は入力をユーザーに返す必要があります(コメントとバイオ)。XSSを防ぐためにstriptags()とhtmlspecialchars()の両方を使用する必要がありますか?
ありがとうございました!
htmlspecialchars()
は、XSSを防止するのに十分です。
ストリップタグは、"
または'
のような特殊文字は削除しないので、strip_tags()
を使用する場合は、htmlspecialchars()
も使用する必要があります。
ユーザーのコメントが入力されたように表示されるようにするには、strip_tagsを使用しないでください.htmlspecialchars()のみを使用してください。
downvoter彼がなぜ落選したのか説明してください。 – arnaud576875
私はdownvotersのために話すことができませんが、あなたの最後の行は完全に間違っているようです。あなたは 'htmlspecialchars'を常に使用するべきです(ブラウザに出力するとき)**ユーザがコードを実行できるようにする場合は**を除いて** – jeroen
@jeroen' Use htmlspecialchars( )のみ、 '。つまり、ユーザーのコメントを入力したように表示するには、strip_tagsを使用しないでください。 htmlspecialcharsのみを使用してください。 – arnaud576875
あなたの主な関心事は、あなたが何をしているかにかかわらず、ユーザーの入力を消毒する必要があります...任意のデータベースクエリで入力を使用している場合、適切なエスケープアルゴリズムでエスケープする必要があります... –