2017-03-17 5 views
-1

私は入力フィールドを持っています。ここではhtmlentitiesを使用して値をエンコードしています。エンコードを使用していてもXSSは脆弱です

$value=htmlentities($value); 

デシベルに格納された値は次のとおりです。

"/><script>alert(document.cookie)</script><br class=" 

しかし、私は、ユーザーに上記のテキストを表示しています、アラートが実行されます。どうすればそれを防ぐことができますか?

+0

この機能を使用していない実際の文字にエンティティを変換する関数、

    • を「HTMLエンティティをデコードし、」使用して再度
  • を試してみてくださいデータは既にHTMLでエンコードされています(例: '<')、 'htmlentities()'を2回( '& lt;')エンコードします。 '<'と '& lt;'は '<'とは非常に異なっています。間違った診断をしていると思います(またはこれは実際のコードではありません)。 –

  • 答えて

    0

    あり起こる可能性がより多くのものです:

    • アラートをやって他のいくつかのコードを持って、出力されたページで「コメント」
      • ルック以外は、それがどこにあるか、探してみてくださいあなたがキャッシュに古いページを持っている
    • 呼ば
      • キャッシュをクリアし、いくつかのあなたの場合だけ
    関連する問題