首页 -> 安全研究

安全研究

安全漏洞
IBM Informix Web DataBlade存在SQL命令可插入漏洞

发布日期:2002-04-15
更新日期:2002-04-15

受影响系统:
IBM Informix Web Datablade 4.12
IBM Informix Web Datablade 4.11
IBM Informix Web Datablade 4.10
描述:
BUGTRAQ  ID: 4496
CVE(CAN) ID: CVE-2002-0554

Informix是由IBM发布和维护的企业级数据库产品,其中Informix Web DataBlade是连接Informix数据库和Web服务器的接口。

Informix Web DataBlade对用户输入缺少正确的检查和过滤,可导致任意SQL命令可执行,造成文件可访问数据库改动,以informax进程执行任意命令等操作。

请求" http://victim.com/site/page.html ",如果使用了HTTP认证,并提供了正确的用户/密码(没有对HTTP无需认证的情况进行测试),在执行的时候webdriver有如下的查询操作报告:

SELECT webexplode(object,?::html),req_level FROM wbpages WHERE name='page' AND path='/' AND req_level <= 100;

webexplode()调用页面引擎,返回一些处理过的HTML。因为WEBDRIVER被配置成只在虚拟目录'/site/'下进行操作,所以是'/'而不是'/site/',这就是ROOT目录,.html扩展名不是查询的一部分,是因为扩展已经使用在另一个查询中用于指出从那个表单获取页面。值"100"是个人用户的"用户级别",一般指定给所有用户;当不使用HTTP验证时,其值一般是0,每个页面对应一"page level" (req_level),因此保护机制确定如果"page level" (req_level)是200的话,你验证用户就必须在200以上级别,否则就会被拒绝。

WEBDRIVER没有正确的处理输入数据中的转义引用," http://victim.com/site/'--/page.html "的请求会导致修改查询部分的"path"信息,导致执行下面的SQL查询:

SELECT webexplode(object,?::html),req_level FROM wbpages WHERE
name='page' AND path='/'--' and req_level <= 100;

也就是我们可以访问" http://victim.com/site/page.html "页面了,或者无需考虑用户级别来访问其他想要的页面。

增加一个";"会出现错误,因此就不可以在一次操作中执行多次查询,所以你进行修改,增加操作会有很大的限制,但是通过结合使用UNION查询,就可能存在任意命令可执行,造成以WEBDRIVER的权限执行任意命令,一般是informax或者root权限。

<*来源:Simon Lodal (simonl@mirrormind.com
  
  链接:http://archives.neohapsis.com/archives/bugtraq/2002-04/0135.html
*>

建议:
临时解决方法:

如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:

* 暂时没有合适的临时解决方法。

厂商补丁:

IBM
---
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.informix.com

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