0
我離開我的網站容易受到攻擊,因爲不過濾頭中的數據重定向?把頭文件()中的unsanitized數據放入函數
例如:
$foo = $_GET['foo'];
header("Location: /bar.php?foo=$foo");
die();
如果答案是肯定的,什麼類型的攻擊是他們,而只是逃避與ヶ輛的數據可行的解決方案?
$foo = $_GET['foo'];
$foo = htmlentities($foo);
header("Location: /bar.php?foo=$foo");
die();
'htmlentities'不會「清除」任何東西;它只是編碼在HTML中具有特殊含義的字符。*由於這裏沒有涉及HTML,所以這是非常沒有意義的。事實上,你可能會變得更糟,因爲HTML實體是用'&..'編碼的,'&'在URL中有它自己的特殊含義。請閱讀[偉大的逃避現實(或:你需要知道如何處理文本中的文本)](http://kunststube.net/escapism/) – deceze 2015-02-06 00:56:59
加上我可以想出一些基於你所提供的重定向原因。聽你只會有一定數量的頁面重定向到,做一些像'switch()',並確保你完全控制重定向。 – David 2015-02-06 01:01:12
@deceze謝謝你的建議。我現在將通讀。 – iCode101 2015-02-06 01:01:25