2014-12-04 76 views
-1

然而,考慮到用戶輸入下面的URL在地址欄中:

http://www.example.com/test_form.php/%22%3E%3Cscript%3Ealert( '黑客')%3C /腳本%3E

在這種情況下,上面的代碼將被轉換爲:

<form method="post" action="test_form.php/"><script>alert('hacked')</script>

我的問題是,什麼是該部分開始 「%22%3E%」?這是一種語言嗎?以及如何將其轉換爲上述腳本代碼?

回答

0

%22%3E%"><的編碼渲染。 這段代碼演示瞭如何將內容附加到URL字符串中,如果PHP(或者任何其他服務器端腳本語言)被粗心地使用,可能會將內容注入到您的html頁面中。

在這裏,它所做的只是注入一些JavaScript彈出一個警告窗口(<script>alert('hacked')</script>)。有可能,它可能注入了JavaScript代碼,帶來更惡意的效果。

+0

謝謝,但你是什麼意思的編碼渲染?你的意思是它是由瀏覽器html引擎翻譯的? – afgphoenix 2014-12-04 07:24:34

+0

這是** http **表示(用於允許URL中的特殊字符)。所以它不是由** html **引擎翻譯的,但是,是的,你有正確的想法。 – Mureinik 2014-12-04 07:26:07