计$ _SERVER [ “PHP_SELF”]漏洞利用

问题描述:

然而,考虑到用户输入下面的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%”?这是一种语言吗?以及如何将其转换为上述脚本代码?

%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