当前位置:首页 > 网络安全 > 正文

Ingress数据库服务器非授权文件操作漏洞

2010-07-19 比特网

  受影响系统:

  Computer Associates eTrust Secure Content Manager r8

  Ingres Corporation Ingres Database r3

  Ingres Corporation Ingres Database 2006 (v9.0.4)

  Ingres Corporation Ingres Database 2.6

  Ingres Corporation Ingres Database 2.5

  描述:

  BUGTRAQ ID: 24585

  CVE(CAN) ID: CVE-2007-3334,CVE-2007-3336,CVE-2007-3337,CVE-2007-3338

  Ingres是很多CA产品默认所使用的数据库后端。

  CA产品所捆绑Ingres数据库服务器在处理请求数据时存在缓冲区溢出漏洞,远程攻击者可能利用此漏洞控制服务器。

  Ingres通讯服务器进程(iigcc)默认监听在TCP 21064端口上。如果创建了到这个端口的连接并在很短时间内发送了两次特制表单的话,iigcc就会用攻击者可控的参数调用QUremove函数,然后QUremove覆盖可控的地址,这就允许攻击者完全控制执行流;如果向这个端口反复发送特制表单且报文之间有些停顿的话,iigcc就会调用QUinsert函数,然后QUinsert使用攻击者可控的地址执行内存操作,最终也允许控制执行流。

  Ingres SQL函数uuid_from_char()可从UUID的字符串表示创建UUID,例如:

  select uuid_from_char('11111111-2222-3333-4444-555555555555')

  如果向uuid_from_char传送了超长字符串参数,就可能溢出栈缓冲区,覆盖保存的返回地址,将执行路径重新定向到攻击者所选择的地址。

  Ingres verifydb工具可以解析duveutil.c文件duve_get_args函数中的命令行参数。如果传送了以下形式的参数:

  -dbms_testAAAAAAAAAAAAAA...<很多A>

  就会导致执行以下代码:

  case 'd': /* debug flag - should be 1st parameter */

  if (MEcmp((PTR)argv[parmno], (PTR)"-dbms_test", (u_i2)10)

  ==DU_IDENTICAL )

  {

  char numbuf[100]; /* scratch pad to read in number*/

  /* the DBMS_TEST flag was specified. See if a numeric

  ** value was attached to it. If so, convert to decimal.

  */

  if (argv[parmno][10])

  {

  STcopy (&argv[parmno][10], numbuf);

  cv_numbuf(numbuf, &duve_cb->duve_dbms_test);

  }

  else

  duve_cb->duve_dbms_test = -1;

  }

  else

  duve_cb->duve_debug = TRUE;

  break;

  Ingres没有执行长度检查便使用STcopy函数将-dbms_test字符串后的参数数据拷贝到了numbuf缓冲区,这导致覆盖栈中的变量,包括所保存的返回地址。

  Ingres的wakeup二进制程序在当前目录中创建了名为alarmwkp.def的文件,如果该文件已存在的话就会将其截短。wakeup二进制程序为setuid ingres,是完全可执行的,因此任何用户都可以通过在当前目录中创建符号链接以ingres用户的权限截短文件。

  <*来源:iDEFENSE

  Chris Anley (chris@ngssoftware.com)

  链接:http://supportconnectw.ca.com/public/ca_common_docs/ingresvuln_letter.asp#

  http://secunia.com/advisories/25756/

  http://secunia.com/advisories/25775/

  http://www.ca.com/us/securityadvisor/newsinfo/collateral.aspx?cid=145778

  http://marc.info/?l=bugtraq&m=118278710728960&w=2

  http://marc.info/?l=bugtraq&m=118278593326503&w=2

  http://marc.info/?l=bugtraq&m=118278781806882&w=2

  http://marc.info/?l=bugtraq&m=118278641901753&w=2

  http://marc.info/?l=bugtraq&m=118278840809935&w=2

  http://labs.idefense.com/intelligence/vulnerabilities/display.php?id=546

  *>

  建议:

  厂商补丁:

  Ingres Corporation

  ------------------

  厂商发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

  http://www.ingres.com/index.php

大家都爱看
查看更多热点新闻