2016-05-03 8 views
1

rawurlencodeメソッドを使用してjson形式でクライアント側にデータを送信しています。 hpfortifyのrawurlencodeメソッドでクロスサイトスクリプティングの妥当性が低いことを示しています。この問題を取り除く方法。どんなアドバイスも大歓迎です。Hpで問題が発生しました - クロスサイトスクリプティングのPHPでの妥当性検証が不十分です

私のコードがある -

$json_encoded = rawurlencode($json); 
$json_encoded = (preg_match("/[%\da-zA-Z-_]+/",htmlspecialchars($json_encoded,ENT_QUOTES, 'UTF-8')) ? $json_encoded : 0); 
echo $json_encoded; 

私はでエラーを取得するには、$ json_encoded(XSS貧しい検証を)エコー。

+0

私はより多くの検証のために** htmlspecailchars()**と**正規表現**を使用しましたが、攻撃の問題はまだあります。 – maheshkumawat23

答えて

0

あなたはどんな非標準の検証機能を使用する場合、それは常に、この問題を報告しますが、は、あなたが将来のスキャンレポートから削除するには、この機能のためにカスタムルールセット(データフロー)を記述する必要があると良いことがあり、それが削除されますこの関数呼び出しを持つすべての問題。

URLencodingはXSSの正しい解決策ではないので、とにかく正確に指摘しています。 (あなたはこれをJsonレスポンスで送信していますが、実際にはxssのエクスプロイトは実際には不可能です)

正しいhtmlspecialchars機能を確認するには、OWASP cheat sheetを参照してください。

+0

あなたが話しているカスタムルールセット。データを検証するHPの強化機能やシンプルな機能のために書き留める必要がありますか? – maheshkumawat23

+0

をFortifyに書き込む必要があります。カスタムルールセットの作成方法とスキャン中にカスタムルールセットを使用する方法については、HPのfortifyドキュメントを参照してください。 – SecurityNinja

関連する問題