CVE-2002-0567
CVSS7.5
发布时间 :2002-07-03 00:00:00
修订时间 :2016-10-17 22:20:42
NMCO    

[原文]Oracle 8i and 9i with PL/SQL package for External Procedures (EXTPROC) allows remote attackers to bypass authentication and execute arbitrary functions by using the TNS Listener to directly connect to the EXTPROC process.


[CNNVD]Oracle TNS Listener执行任意库调用漏洞(CNNVD-200207-016)

        
        Oracle是一个流行的商业数据库系统,它可以在Windows和很多Unix系统下运行。
        由于Oracle数据库缺乏完整的身份验证,允许攻击者远程调用任意系统库函数,从而以数据库运行权限执行任意命令。
        Oracle数据库的大部分功能是由PL/SQL包提供的。PL/SQL允许创建一些包含导出的过程和函数的可执行package。PL/SQL package可以调用那些由操作系统库或动态链接库导出的函数。攻击者可以调用system()函数并向其传递所要执行的程序名,显然用户如果能够执行上述操作,应该能以那些有"CREATE LIBRARY"权限的用户身份登陆进入数据库。然而攻击者可以欺骗Oracle服务器,无需通过身份认证就可加载任意系统库并执行任意函数。
        当一个PL/SQL package要求运行一个外部过程时,oracle进程连接到Listener并请求它加载相关的库。Listener会启动另外一个进程(在Unix系统下是extproc,在Windows系统下是extproc.exe),将oracle转向该进程。oracle进程通过命名管道连接extproc进程,并将发给Listener的请求转发给它。Extproc进程加载相应的库并调用该函数。然而,在上述过程中没有执行任何认证。攻击者可以伪装成oracle进程,并强迫使用套接字而不是命名管道进行远程操作。攻击者可以通过TCP连接listener/extproc端口,无需认证就可以使oracle执行任意的库函数,例如system()调用。在Windows系统下,Oracle数据库缺省是以Local SYSTEM身份运行,在Unix系统下,缺省是以"oracle"用户身份运行。攻击者可以远程以上述用户身份执行任意命令。
        

- CVSS (基础分值)

CVSS分值: 7.5 [严重(HIGH)]
机密性影响: [--]
完整性影响: [--]
可用性影响: [--]
攻击复杂度: [--]
攻击向量: [--]
身份认证: [--]

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

cpe:/a:oracle:database_server:8.1.7.0.0Oracle Database Server 8.1.7.0.0
cpe:/a:oracle:oracle9i:9.0.1
cpe:/a:oracle:database_server:8.0.5Oracle Database Server 8.0.5
cpe:/a:oracle:oracle8i:enterprise_8.1.5.1.0
cpe:/a:oracle:database_server:8.1.7Oracle Database Server 8.1.7
cpe:/a:oracle:oracle9i:9.0
cpe:/a:oracle:database_server:8.0.6Oracle Database Server 8.0.6
cpe:/a:oracle:database_server:8.1.5Oracle Database Server 8.1.5
cpe:/a:oracle:oracle8i:enterprise_8.1.5.0.2
cpe:/a:oracle:database_server:8.0.4Oracle Database Server 8.0.4
cpe:/a:oracle:oracle8i:enterprise_8.1.5.0.0
cpe:/a:oracle:database_server:8.1.6Oracle Database Server 8.1.6
cpe:/a:oracle:oracle8i:8.1.5
cpe:/a:oracle:oracle8i:8.1.7.1
cpe:/a:oracle:oracle8i:8.1.6
cpe:/a:oracle:oracle8i:enterprise_8.1.6.0.0
cpe:/a:oracle:oracle8i:enterprise_8.1.7.0.0
cpe:/a:oracle:oracle8i:enterprise_8.1.7.1.0
cpe:/a:oracle:oracle8i:enterprise_8.1.6.1.0
cpe:/a:oracle:oracle8i:enterprise_8.0.6.0.0
cpe:/a:oracle:database_server:8.0.1Oracle Database Server 8.0.1
cpe:/a:oracle:database_server:8.0.5.1Oracle Database Server 8.0.5.1
cpe:/a:oracle:database_server:8.0.2Oracle Database Server 8.0.2
cpe:/a:oracle:oracle8i:enterprise_8.0.5.0.0
cpe:/a:oracle:oracle8i:enterprise_8.0.6.0.1
cpe:/a:oracle:oracle8i:8.1.7
cpe:/a:oracle:database_server:8.0.3Oracle Database Server 8.0.3

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

未找到相关OVAL定义

- 官方数据库链接

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

- 其它链接及资源

http://marc.info/?l=bugtraq&m=101301332402079&w=2
(UNKNOWN)  BUGTRAQ  20020206 Remote Compromise in Oracle 9i Database Server
http://otn.oracle.com/deploy/security/pdf/plsextproc_alert.pdf
(VENDOR_ADVISORY)  CONFIRM  http://otn.oracle.com/deploy/security/pdf/plsextproc_alert.pdf
http://www.cert.org/advisories/CA-2002-08.html
(VENDOR_ADVISORY)  CERT  CA-2002-08
http://www.kb.cert.org/vuls/id/180147
(UNKNOWN)  CERT-VN  VU#180147
http://www.securityfocus.com/bid/4033
(VENDOR_ADVISORY)  BID  4033
http://xforce.iss.net/static/8089.php
(VENDOR_ADVISORY)  XF  oracle-plsql-remote-access(8089)

- 漏洞信息

Oracle TNS Listener执行任意库调用漏洞
高危 未知
2002-07-03 00:00:00 2005-05-02 00:00:00
远程  
        
        Oracle是一个流行的商业数据库系统,它可以在Windows和很多Unix系统下运行。
        由于Oracle数据库缺乏完整的身份验证,允许攻击者远程调用任意系统库函数,从而以数据库运行权限执行任意命令。
        Oracle数据库的大部分功能是由PL/SQL包提供的。PL/SQL允许创建一些包含导出的过程和函数的可执行package。PL/SQL package可以调用那些由操作系统库或动态链接库导出的函数。攻击者可以调用system()函数并向其传递所要执行的程序名,显然用户如果能够执行上述操作,应该能以那些有"CREATE LIBRARY"权限的用户身份登陆进入数据库。然而攻击者可以欺骗Oracle服务器,无需通过身份认证就可加载任意系统库并执行任意函数。
        当一个PL/SQL package要求运行一个外部过程时,oracle进程连接到Listener并请求它加载相关的库。Listener会启动另外一个进程(在Unix系统下是extproc,在Windows系统下是extproc.exe),将oracle转向该进程。oracle进程通过命名管道连接extproc进程,并将发给Listener的请求转发给它。Extproc进程加载相应的库并调用该函数。然而,在上述过程中没有执行任何认证。攻击者可以伪装成oracle进程,并强迫使用套接字而不是命名管道进行远程操作。攻击者可以通过TCP连接listener/extproc端口,无需认证就可以使oracle执行任意的库函数,例如system()调用。在Windows系统下,Oracle数据库缺省是以Local SYSTEM身份运行,在Unix系统下,缺省是以"oracle"用户身份运行。攻击者可以远程以上述用户身份执行任意命令。
        

- 公告与补丁

        临时解决方法:
        如果您不能立刻安装补丁或者升级,CNNVD建议您采取以下措施以降低威胁:
        * 在边界防火墙或者主机防火墙上限制对Oracle 服务器1521/TCP端口的访问。
        * 如果您不需要执行外部库,可以删除PLSExtproc功能。具体做法是在tnsnames.ora和listener.ora中删除相应条目。您也可以将extproc(.exe)删除或者改名。
        * 如果您确实需要PLSExtproc功能,可以限制访问listener的主机IP。具体方法是:
         修改$ORACLE_HOME\network\admin目录下的sqlnet.ora文件,增加下列语句:
        
         tcp.validnode_checking = YES
         tcp.invited_nodes = (10.1.1.2, scylla)
        将"10.1.1.2"替换成可信任的主机IP。
        * 对于Windows NT/2000系统,应该创建一个普通用户,并让oracle进程以该用户身份运行。该用户需要赋予"Logon as a service"权限。
        厂商补丁:
        Oracle
        ------
        目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
        
        http://www.oracle.com

- 漏洞信息

5234
Oracle PL/SQL Package for External Procedures (EXTPROC) TNS Listener Authentication Bypass
Vendor Verified

- 漏洞描述

- 时间线

2002-02-06 Unknow
Unknow Unknow

- 解决方案

Products

Oracle Corporation

Database Server 8i

8.1.7

- 相关参考

- 漏洞作者

Unknown or Incomplete
 

 

关于SCAP中文社区

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

版权声明

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