<<< Date Index >>>     <<< Thread Index >>>

Re: Team SHATTER Security Advisory: SQL Injection in Oracle Database (DBMS_DEFER_SYS.DELETE_TRAN)



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

The DBA role in Oracle Database is not the same as SYSDBA privilege,
which is granted to SYS. There are many things that a user granted the
DBA role can't do - the most important being the ability to alter SYS
owned objects. This is true on databases where
O7_DICTIONARY_ACCESSIBILITY=FALSE (default value).

This vulnerability allows any user with execute privileges on the
affected package (by default users granted the DBA role) to impersonate
the SYS user.
This is especially high risk vulnerability in databases where strict
separation-of-duty is implemented as required by some regulations. This
may also be the case, for instance, where Oracle Database Vault is
deployed. Exploiting this vulnerability may allow a DBA to bypass
Database Vault protections and access protected data that should be
restricted by Database Vault. In other words, a DBA may escalate to
DV_OWNER (Database Vault Owner) privileges.

Also, the default privileges required to execute the affected package
could have been changed to include non-trusted users. In this case,
these non-trusted users may exploit the vulnerability to escalate
privileges and own the database.

Team SHATTER,
Application Security Inc. (www.appsecinc.com)
Memisyazici, Aras wrote:
| Umm...
|
|>> By default, users granted DBA have the required privilege. <<
|
| So... You are saying, people should beware of DBAs (Database
Administrators... AKA DB Gods) having the possibility to do SQL
injection? Riighhtt... And why should they go through the trouble of
exploiting a webapp to manipulate data in the DB? They're DBAs... As in
they already CAN manipulate the data in the database since they sort of
ADMINISTER it!
|
| Aras "Russ" Memisyazici
| Systems Administrator
| Office of Vice President for Research
| Virginia Tech
|
| -----Original Message-----
| From: Team SHATTER [mailto:shatter@xxxxxxxxxxxxx]
| Sent: Monday, August 04, 2008 12:42 PM
| To: bugtraq@xxxxxxxxxxxxxxxxx; full-disclosure@xxxxxxxxxxxxxxxxx
| Subject: Team SHATTER Security Advisory: SQL Injection in Oracle
Database (DBMS_DEFER_SYS.DELETE_TRAN)
|
| Team SHATTER Security Advisory
|
| SQL Injection in Oracle Database (DBMS_DEFER_SYS.DELETE_TRAN)
|
| August 4, 2008
|
| Risk Level:
| Medium
|
| Affected versions:
| Oracle Database Server versions 9iR1, 9iR2, 10gR1, 10gR2 and 11gR1
|
| Remote exploitable:
| Yes (Authentication to Database Server is needed)
|
| Credits:
| This vulnerability was discovered and researched by Esteban Martínez
Fayó of Application Security Inc.
|
| Details:
| The PL/SQL package DBMS_DEFER_SYS owned by SYS has an instance of SQL
Injection in the DELETE_TRAN procedure. A malicious user can call the
vulnerable procedure of this package with specially crafted parameters
and execute SQL statements with the elevated privileges of SYS user.
|
| Impact:
| Any Oracle database user with EXECUTE privilege on the package
SYS.DBMS_DEFER_SYS can exploit this vulnerability. By default, users
granted DBA have the required privilege. Exploitation of this
vulnerability allows an attacker to execute SQL commands with SYS
privileges.
|
| Vendor Status:
| Vendor was contacted and a patch was released.
|
| Workaround:
| Restrict access to the SYS.DBMS_DEFER_SYS package.
|
| Fix:
| Apply Oracle Critical Patch Update July 2008 available at Oracle Metalink.
|
| Links:
|
http://www.oracle.com/technology/deploy/security/critical-patch-updates/cpujul2008.html
| http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-2592
|
| Timeline:
| Vendor Notification - 9/24/2007
| Vendor Response - 9/28/2007
| Fix - 7/15/2008
| Public Disclosure - 7/23/2008
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (MingW32)

iEYEARECAAYFAkigrysACgkQ9EOAcmTuFN3trACfajJ17O9b/1efhlM0QAljCedp
if4AoJ6+dqDggI41lsxePQ9PKfIjDkg+
=k+BC
-----END PGP SIGNATURE-----