安全研究

安全漏洞
IBM DB2 libdb2.so本地缓冲区溢出漏洞

发布日期:2005-01-05
更新日期:2005-01-06

受影响系统:
IBM DB2 Universal Database for Windows 8.1
IBM DB2 Universal Database for Windows 7.2
IBM DB2 Universal Database for Windows 7.1
IBM DB2 Universal Database for Solaris 8.1
IBM DB2 Universal Database for Solaris 7.2
IBM DB2 Universal Database for Solaris 7.1
IBM DB2 Universal Database for Solaris 7.0
IBM DB2 Universal Database for Linux 7.2
IBM DB2 Universal Database for Linux 7.1
IBM DB2 Universal Database for Linux 7.0
IBM DB2 Universal Database for HP-UX 8.1
IBM DB2 Universal Database for HP-UX 7.2
IBM DB2 Universal Database for HP-UX 7.1
IBM DB2 Universal Database for AIX 8.1
IBM DB2 Universal Database for AIX 7.2
IBM DB2 Universal Database for AIX 7.1
IBM DB2 Universal Database for AIX 7.0
描述:
BUGTRAQ  ID: 11390

IBM DB2是一个大型的商业关系数据库系统,面向电子商务、商业资讯、内容管理、客户关系管理等应用,可运行于AIX、HP-UX、Linux、Solaris、Windows等系统。

IBM DB2提供的ibdb2.so.1库存在缓冲区溢出问题,本地攻击者可以利用这个漏洞以root用户权限在系统上执行任意指令。

此漏洞可分为两个问题,第一当libdb2.so被装载时它读取DBLPORT环境变量,然后拷贝值到.bss段的缓冲区中,缓冲区会溢出,通过提供一个超长的DB2LPORT环境变量会填充libdb2.so.1库的.bss段的db2MLNPort_name缓冲区,然后溢出到db2node_name buffer到instprof_path缓冲区,然后进入instance_path缓冲区,最后到install_path缓冲区。第二个问题是当sqloInstancePath()读取install_path时,可以覆盖sqloGetInstancePath()函数的本地堆栈缓冲区。

精心构建提交数据可能获得root用户权限,如db2cacpy是setuid root属性安装,程序装载此库并调用sqloInstancePath()溢出缓冲区。

<*来源:NGSSoftware (mark@ngssoftware.com
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=110495092105541&w=2
*>

建议:
厂商补丁:

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

http://www.ibm.com/software/data/db2/udb/support/downloadv8.html
http://www.ibm.com/software/data/db2/udb/support/downloadv7.html

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