首页 -> 安全研究

安全研究

安全漏洞
Invision Power Board search.php脚本代码注入漏洞

发布日期:2006-04-25
更新日期:2006-04-26

受影响系统:
Invision PS Invision Board 2.1.5
描述:
BUGTRAQ  ID: 17695

Invision Power Board是一款流行的PHP论坛程序。

Invision Power Board的search.php脚本处理变量时存在输入验证漏洞,远程攻击者可能利用此漏洞注入PHP代码获取执行。

在preg_replace()中使用之前Invision Power Board没有正确的过滤search.php中对lastdate参数的过滤,导致可以通过样式修改符“e”注入任意PHP代码。

sources/action_public/search.php 1261行漏洞代码:

$this->output = preg_replace( \
"#(value=[\"']{$this->ipsclass->input['lastdate']}[\"'])#i", "\\1 \
selected='selected'",  $this->output );

<*来源:IceShaman
        Wells
  
  链接:http://secunia.com/advisories/19830/print/
        http://marc.theaimsgroup.com/?l=bugtraq&m=114598412817933&w=2
*>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

- 在论坛的某个位置张贴“eval(die()); //”;
- 使用搜索表单通过你的用户名找到“die”文本(以便只显示一个结果),确定选择了“Show results as posts”;
- 向URL开头附加“&lastdate=z|eval.*?%20//)%23e%00”并按回车。

建议:
厂商补丁:

Invision PS
-----------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

http://forums.invisionpower.com/index.php?showtopic=213374

浏览次数:3966
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障