0
當你逃脫輸出你做這樣的防止XSS:如何逃脫JSON喜歡你逃避輸出,以防止XSS
echo htmlentities($variable);
我們需要逃避JSON對象過於防止XSS?:
echo htmlentities(json_encode($variable));
還是沒有必要,請有人告訴我。如果不需要,請解釋原因?
JQuery的:
阿賈克斯的成功部分內:
這將是在$。每個環路和內容將是:
$('#textbox').attr('value', variable);
你如何轉義數據取決於*你把它放在哪裏*,而不是你要轉義的數據是什麼。我們不能告訴你需要對數據做什麼,因爲我們不知道你的'echo'聲明出現在哪裏。 – Quentin 2013-02-22 17:01:23
JSON對象被解析爲javascript/JQuery。並用於顯示輸出,有時放在文本框中。 – 2013-02-22 17:47:12
「JSON對象被解析爲javascript/JQuery」 - 沒有說明你在哪裏放置它。只是什麼處理它。這可能意味着你創建了一個'application/json' HTTP響應,或者將它作爲'data-json'屬性值嵌入到div中,或者將它嵌入到'
號JSON編碼輸出是安全的。所有可能有害的字符或輸入類型都會被正確轉義或引用。
來源
2013-02-22 17:01:33
根據JSON文本的回顯位置,這可能會也可能不會。 (例如,如果它被回送到HTML屬性值中,它不是真的) – Quentin 2013-02-22 17:02:47