2011-05-21 154 views
-2

可能重複:
PHP_SELF and XSSPHP_SELF和XSS

爲什麼有必要過濾$ _ SERVER [ 'PHP_SELF'],從如:

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> 
    <!-- form contents --> 
</form> 

to: 

<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"], ENT_QUOTES, "utf-8"); ?>"> 
    <!-- form contents --> 
</form> 

以使它成爲XSS攻擊證明?

和:

比他使用的第一種形式的「漏洞」如何才能達到攻擊其他最終用戶?

+1

請不要發表重複。 – 2011-05-21 10:36:41

+2

爲什麼你問同樣的問題兩次? – Gumbo 2011-05-21 10:38:31

+0

第二個問題的答案是[here](http://bit.ly/lwwdUV)。 – Gumbo 2011-05-21 10:41:12

回答

0

如果您使用AcceptPathInfo或類似的這樣一個URI像/index.php/foo/bar針對/index.php東西,請求/index.php/%22%E3E…可以得到form標籤外的以下數據。

至於第二個問題:click here

1

攻擊者如何利用第一種形式的「漏洞」攻擊除自己以外的最終用戶?

攻擊者可以從他控制的網站或他發送的電子郵件中鏈接到您的網站。