$ _SERVER [' PHP_SELF']漏洞没有"工作"?

时间:2012-11-06 09:23:52

标签: php security

查看客户的旧代码,他正在使用

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" />

我想知道它是否受XSS限制,但是当我尝试时:

  • form.php"><script>alert('xss');</script> =&gt; 404没有找到Apache
  • form.php/"><script>alert('xss');</script> =&gt; 404来自我的应用

我必须指定我还在网址中使用?action = specific_page进行正常使用。

这是否意味着使用PHP_SELF无法实现XSS,或者这是否意味着我正在以错误的方式尝试?

1 个答案:

答案 0 :(得分:4)

如果您的表单位于form.php脚本,请尝试使用浏览器中的网址http://yoursite.com/form.php/"><script>alert('XSS')</script>访问该表单,以查看它是否容易被注入。

如果它没有执行任何操作,则您的配置会阻止此操作,至少对于此特定文件而言。

(当然,你应该使用类似htmlspecialchars($_SERVER['SCRIPT_NAME'])的东西。)