CVE-2002-0972
CVSS4.6
发布时间 :2002-09-24 00:00:00
修订时间 :2016-10-17 22:23:07
NMCOS    

[原文]Buffer overflows in PostgreSQL 7.2 allow attackers to cause a denial of service and possibly execute arbitrary code via long arguments to the functions (1) lpad or (2) rpad.


[CNNVD]PostgreSQL字符串填充函数本地缓冲区溢出漏洞(CNNVD-200209-039)

        
        PostgreSQL是一款增强对象-关系数据库管理程序,支持SQL标准子集扩展,适用于多种操作系统下。
        PostgreSQL字符串填充函数对用户提交的输入缺少正确处理,本地攻击者可以利用这个漏洞进行缓冲区溢出攻击,导致权限提升。
        src/backend/utils/adt/oracle_compat.c文件中的lpad()和rpad()函数用于对已经存在的字符串填补到一定长度。这两个函数没有正确处理用户提交的超长的整数参数,可导致缓冲区破坏,精心构建提交的参数可以提升权限。
        这个漏洞只影响使用特殊通用编码建立的数据,如使用"UNICODE"编码建立的数据库存在此问题。
        

- CVSS (基础分值)

CVSS分值: 4.6 [中等(MEDIUM)]
机密性影响: PARTIAL [很可能造成信息泄露]
完整性影响: PARTIAL [可能会导致系统文件被修改]
可用性影响: PARTIAL [可能会导致性能下降或中断资源访问]
攻击复杂度: LOW [漏洞利用没有访问限制 ]
攻击向量: LOCAL [漏洞利用需要具有物理访问权限或本地帐户]
身份认证: NONE [漏洞利用无需身份认证]

- CPE (受影响的平台与产品)

cpe:/a:postgresql:postgresql:7.2 PostgreSQL 7.2
cpe:/a:postgresql:postgresql:7.1 PostgreSQL 7.1
cpe:/a:postgresql:postgresql:7.1.2
cpe:/a:postgresql:postgresql:7.2.1
cpe:/a:postgresql:postgresql:6.3.2
cpe:/a:postgresql:postgresql:7.1.1
cpe:/a:postgresql:postgresql:6.5.3

- OVAL (用于检测的技术细节)

未找到相关OVAL定义

- 官方数据库链接

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2002-0972
(官方数据源) MITRE
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2002-0972
(官方数据源) NVD
http://www.cnnvd.org.cn/vulnerability/show/cv_cnnvdid/CNNVD-200209-039
(官方数据源) CNNVD

- 其它链接及资源

http://marc.info/?l=bugtraq&m=102987608300785&w=2
(UNKNOWN)  BUGTRAQ  20020820 @(#)Mordred Labs advisory 0x0004: Multiple buffer overflows in PostgreSQL.
http://www.redhat.com/support/errata/RHSA-2003-001.html
(UNKNOWN)  REDHAT  RHSA-2003:001

- 漏洞信息

PostgreSQL字符串填充函数本地缓冲区溢出漏洞
中危 边界条件错误
2002-09-24 00:00:00 2005-10-20 00:00:00
本地  
        
        PostgreSQL是一款增强对象-关系数据库管理程序,支持SQL标准子集扩展,适用于多种操作系统下。
        PostgreSQL字符串填充函数对用户提交的输入缺少正确处理,本地攻击者可以利用这个漏洞进行缓冲区溢出攻击,导致权限提升。
        src/backend/utils/adt/oracle_compat.c文件中的lpad()和rpad()函数用于对已经存在的字符串填补到一定长度。这两个函数没有正确处理用户提交的超长的整数参数,可导致缓冲区破坏,精心构建提交的参数可以提升权限。
        这个漏洞只影响使用特殊通用编码建立的数据,如使用"UNICODE"编码建立的数据库存在此问题。
        

- 公告与补丁

        厂商补丁:
        Conectiva
        ---------
        Conectiva已经为此发布了一个安全公告(CLA-2002:524)以及相应补丁:
        CLA-2002:524:postgresql
        链接:
        http://distro.conectiva.com.br/atualizacoes/?id=a&anuncio=000524

        补丁下载:
        ftp://atualizacoes.conectiva.com.br/6.0/SRPMS/postgresql-7.0.3-11U60_2cl.src.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-clients-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-clients-X11-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-devel-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-devel-static-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-doc-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-jdbc-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-lib-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-odbc-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-perl-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-python-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-tcl-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/6.0/RPMS/postgresql-test-7.0.3-11U60_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/SRPMS/postgresql-7.1.3-1U70_3cl.src.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-clients-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-clients-X11-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-contrib-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-devel-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-devel-static-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-doc-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-lib-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-odbc-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-perl-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-python-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-tcl-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/7.0/RPMS/postgresql-test-7.1.3-1U70_3cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/8/SRPMS/postgresql-7.2.2-1U80_2cl.src.rpm
        ftp://atualizacoes.conectiva.com.br/8/RPMS/postgresql-7.2.2-1U80_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/8/RPMS/postgresql-clients-7.2.2-1U80_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/8/RPMS/postgresql-clients-X11-7.2.2-1U80_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/8/RPMS/postgresql-contrib-7.2.2-1U80_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/8/RPMS/postgresql-devel-7.2.2-1U80_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/8/RPMS/postgresql-devel-static-7.2.2-1U80_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/8/RPMS/postgresql-doc-7.2.2-1U80_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/8/RPMS/postgresql-lib-7.2.2-1U80_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/8/RPMS/postgresql-odbc-7.2.2-1U80_2cl.i386.rpm
        ftp://atualizacoes.conectiva.com.br/8/RPMS/postgresql-perl-7.2.2-1U80_2cl.i386.rpm
        

- 漏洞信息

9503
PostgreSQL Multiple Function Long Argument Overflow
Input Manipulation
Loss of Integrity

- 漏洞描述

Unknown or Incomplete

- 时间线

2002-08-20 Unknow
Unknow Unknow

- 解决方案

Unknown or Incomplete

- 相关参考

- 漏洞作者

Unknown or Incomplete

- 漏洞信息

PostgreSQL String Pad Function Buffer Overflow Vulnerability
Boundary Condition Error 5528
No Yes
2002-08-20 12:00:00 2009-07-11 03:56:00
Discovery credited to Sir Mordred The Traitor <mordred@s-mail.com>.

- 受影响的程序版本

PostgreSQL PostgreSQL 7.2.1
+ Conectiva Linux 8.0
+ Debian Linux 3.0 sparc
+ Debian Linux 3.0 s/390
+ Debian Linux 3.0 ppc
+ Debian Linux 3.0 mipsel
+ Debian Linux 3.0 mips
+ Debian Linux 3.0 m68k
+ Debian Linux 3.0 ia-64
+ Debian Linux 3.0 ia-32
+ Debian Linux 3.0 hppa
+ Debian Linux 3.0 arm
+ Debian Linux 3.0 alpha
+ Debian Linux 3.0
+ Gentoo Linux 0.7
+ Gentoo Linux 0.5
PostgreSQL PostgreSQL 7.2
+ Mandriva Linux Mandrake 8.2 ppc
+ Mandriva Linux Mandrake 8.2
+ S.u.S.E. Linux 8.0 i386
+ S.u.S.E. Linux 8.0
PostgreSQL PostgreSQL 7.1.3
+ Conectiva Linux 7.0
+ RedHat Linux 7.2
+ S.u.S.E. Linux 7.3 sparc
+ S.u.S.E. Linux 7.3 ppc
+ S.u.S.E. Linux 7.3 i386
+ S.u.S.E. Linux 7.3
+ Trustix Secure Linux 1.5
+ Trustix Secure Linux 1.2
+ Trustix Secure Linux 1.1
PostgreSQL PostgreSQL 7.1.2
+ Mandriva Linux Mandrake 8.1 ia64
+ Mandriva Linux Mandrake 8.1
PostgreSQL PostgreSQL 7.1.1
PostgreSQL PostgreSQL 7.1
PostgreSQL PostgreSQL 7.0.3
+ Conectiva Linux 6.0
+ Mandriva Linux Mandrake 8.0 ppc
+ Mandriva Linux Mandrake 8.0
+ S.u.S.E. Linux 7.1 x86
+ S.u.S.E. Linux 7.1 sparc
+ S.u.S.E. Linux 7.1 ppc
+ S.u.S.E. Linux 7.1 alpha
+ S.u.S.E. Linux 7.1
PostgreSQL PostgreSQL 7.0.2
+ MandrakeSoft Single Network Firewall 7.2
+ Mandriva Linux Mandrake 7.2
+ Wirex Immunix OS 7.0
+ Wirex Immunix OS 7+
PostgreSQL PostgreSQL 6.5.3
+ Wirex Immunix OS 6.2
PostgreSQL PostgreSQL 6.3.2
PostgreSQL PostgreSQL 7.2.3
PostgreSQL PostgreSQL 7.2.2
+ Mandriva Linux Mandrake 9.0
+ Turbolinux Turbolinux Server 8.0
+ Turbolinux Turbolinux Server 7.0
+ Turbolinux Turbolinux Workstation 8.0

- 不受影响的程序版本

PostgreSQL PostgreSQL 7.2.3
PostgreSQL PostgreSQL 7.2.2
+ Mandriva Linux Mandrake 9.0
+ Turbolinux Turbolinux Server 8.0
+ Turbolinux Turbolinux Server 7.0
+ Turbolinux Turbolinux Workstation 8.0

- 漏洞讨论

A buffer overflow vulnerability has been reported for PostgreSQL. Reportedly, PostgreSQL doesn't properly handle overly large integer arguments given to the lpad() and rpad() funtions. The functions are lpad() and rpad() found in the file, src/backend/utils/adt/oracle_compat.c, and serve to pad an existing text string with another up to a given length.

This vulnerability only affects data bases that were created using special international encodings. For example, databases that were created using a 'UNICODE' encoding are vulnerable to this issue.

- 漏洞利用

Currently we are not aware of any exploits for this issue. If you feel we are in error or are aware of more recent information, please mail us at: vuldb@securityfocus.com &lt;mailto:vuldb@securityfocus.com&gt;.

- 解决方案

Gentoo Linux has recommended that users who are running dev-db/postgresql-7.2.1-r2 and earlier to update their systems using the following commands. Further details are provided in the referenced advisory.

emerge rsync
emerge postgresql
emerge clean

FreeBSD has released a Security Notice FreeBSD-SN-02:05. Users of FreeBSD systems are strongly urged to upgrade their ports tree to fix various reported issues. Further information can be found in the referenced Security Notice.

Debian has released an advisory with fixes. See the attached advisory (DSA 165-1) for details on obtaining fixes.

Conectiva Linux has fixes available. Further information is available in the referenced advisory.

S.u.S.E. has released an advisory. Fixes for Sparc and Alpha platforms will be forthcoming. Further upgrading instructions are available in the referenced advisory.

Red Hat has released advisories (RHSA-2003:001-16 and RHSA-2003:010-10) which address this and other issues. Please see the attached advisories for details on obtaining and applying fixes.

Mandrake has made fixes available. See referenced advisory MDKSA-2002:062-1 for additional details.

Trustix Secure Linux has released an advisory (TSLSA-2003-0004) which addresses this and other PostgreSQL issues. Users are advised to upgrade as soon as possible.

WireX has released advisory IMNX-2003-7+-005-01 to address this issue.

Fixes available:


PostgreSQL PostgreSQL 6.3.2

PostgreSQL PostgreSQL 6.5.3

PostgreSQL PostgreSQL 7.0.2

PostgreSQL PostgreSQL 7.0.3

PostgreSQL PostgreSQL 7.1

PostgreSQL PostgreSQL 7.1.1

PostgreSQL PostgreSQL 7.1.2

PostgreSQL PostgreSQL 7.1.3

PostgreSQL PostgreSQL 7.2

PostgreSQL PostgreSQL 7.2.1

- 相关参考

 

 

关于SCAP中文社区

SCAP中文社区是国内第一个以SCAP为主题的中文开放社区。了解更多信息,请查阅[关于本站]

版权声明

CVE/CWE/OVAL均为MITRE公司的注册商标,它们的官方数据源均保存在MITRE公司的相关网站