可以找到原始示例here:
摘要
表单元素:
<form method="post" action="<?php echo $_SERVER["PHP_SELF"];?>">
某人在浏览器地址栏中输入了一段恶意代码:http://www.example.com/test_form.php/%22%3E%3Cscript%3Ealert('hacked')%3C/script%3E
该示例声明表单元素将转换为以下内容:
<form method="post" action="test_form.php/"><script>alert('hacked')</script>
虽然我明白了,但我不明白为什么
我一定有一些错误的概念。请指正。感谢
答案 0 :(得分:2)
当网址不存在时,这甚至可以正常工作。那个人不应该得到某种错误页面说无法找到该网站吗?就像我们不小心输入错误的地址而什么都没有?
如果Web服务器配置为在脚本路径之后允许额外数据,则不会。在Apache中,这是由AcceptPathInfo Directive配置的。
即使它有效,除了&#34; hacker&#34;之外的其他人怎么样?如果更改未保存在服务器上的php文件中,他自己会受到影响吗?我的意思是黑客手动输入恶意代码,他的浏览器会下载受影响的网页。
XSS攻击需要攻击者让目标访问此URL,以便恶意有效负载在目标浏览器中运行。一种方法是欺骗目标点击恶意链接。