SkipNavigation
US-CERT
American Flag
  Vulnerability
Notes
Database

Search Vulnerability Notes

Vulnerability Notes Help Information


 
 View Notes By
  Name

ID Number

CVE Name

Date Public

Date Published

Date Updated

Severity Metric



 Other Documents
  Technical Alerts

Technical Bulletins

Alerts

Security Tips

Vulnerability Note VU#169164

Oracle PL/SQL Gateway fails to properly validate HTTP requests

Overview

The Oracle PL/SQL Gateway fails to properly validate HTTP requests. This may allow a remote attacker to execute SQL commands on an Oracle database.

I. Description

Oracle uses the Oracle PL/SQL Gateway to access Oracle databases over HTTP. A lack of validation in the Oracle PL/SQL Gateway may allow a remote attacker to bypass Oracle's security restrictions and gain access to critical packages and procedures. The Oracle PL/SQL Gateway uses a list of keywords to restrict access to powerful packages and procedures. Upon receiving a request to execute a procedure, the PL/SQL Gateway compares the request to the list to determine if that procedure attempts to access any restricted procedures or packages. However, a remote attacker may be able to bypass this check by sending a specially crafted HTTP request to the Oracle PL/SQL Gateway.

Note that all Oracle installations with the HTTP Server (Apache) enabled may be affected by this vulnerability. For more information see Oracle Metalink Note 311536.1.

According to public reports, this issue is identified as PLSQL01 in the Oracle Critical Patch Update for April 2006.

II. Impact

If a remote attacker sends a specially crafted HTTP request to a vulnerable Oracle installation, that attacker may be able to execute SQL commands with elevated privileges.

III. Solution

Apply a patch

This issue is corrected by the Oracle Critical Patch Update for April 2006.

Set always_describe or PlsqlAlwaysDescribeProcedure parameters to ON

Set the always_describe or PlsqlAlwaysDescribeProcedure to ON in the dads.conf file. According to red database security:

    PlsqlAlwaysDescribeProcedure specifies whether mod_plsql should describe a procedure before trying to execute it. If this is set to "On", then mod_plsql will always describe a procedure before invoking it. Otherwise, mod_plsql will only describe a procedure when its internal heuristics have interpreted a parameter type incorrectly.

    If PlsqlAlwaysDescribeProcedure is enabled, Oracle tries to describe every PL/SQL procedure. If a hacker injects pl/sql code, Oracle tries to describe this specially crafted string but fails because this procedure does not exist.
Disable Oracle's HTTP Server

As a general rule, disable or remove any nonessential software. In this case, the Oracle HTTP Server (Apache) should be disabled on any Oracle installations that do need to be accessible via HTTP.

Limit Access to HTTP Server

You may wish to block access to the vulnerable software from outside your network perimeter, specifically by blocking access to the ports used by the Apache HTTP server (typically 80/tcp). This will limit your exposure to attacks. However, blocking at the network perimeter would still allow attackers within the perimeter of your network to exploit the vulnerability. The use of host-based firewalls in addition to network-based firewalls can help restrict access to specific hosts within the network. It is important to understand your network's configuration and service requirements before deciding what changes are appropriate.

Systems Affected

VendorStatusDate NotifiedDate Updated
Oracle CorporationVulnerable19-Apr-2006

References


http://www.oracle.com/technology/deploy/security/pdf/cpuapr2006.html
https://metalink.oracle.com/
http://secunia.com/advisories/18621/
http://www.securityfocus.com/archive/1/423029
http://www.securityfocus.com/archive/1/archive/1/423819/100/0/threaded
http://lists.grok.org.uk/pipermail/full-disclosure/2006-January/041742.html
http://www.red-database-security.com/advisory/oracle_modplsql_injection.html
http://www.integrigy.com/info/IntegrigySecurityAnalysis-MODPLSQLVuln.pdf
http://www.red-database-security.com/advisory/oracle_cpu_apr_2006.html

Credit

This vulnerability was reported by David Litchfield of NGSSoftware. Information used in this document came from Integrigy, Alexander Kornbrust of red-database security, and Vladimir Zakharychev of Webrecruiter.

This document was written by Jeff Gennari.

Other Information

Date Public:2006-01-25
Date First Published:2006-01-27
Date Last Updated:2006-04-19
CERT Advisory: 
CVE-ID(s):CVE-2006-0435
NVD-ID(s):CVE-2006-0435
US-CERT Technical Alerts: 
Metric:21.37
Document Revision:81

If you have feedback, comments, or additional information about this vulnerability, please send us email.
 

 
Page Corner Image
Produced 2006 by US-CERT, a government organization
Disclaimers and copyright information
Get Adobe Reader Get Adobe Reader