THC veröffentlicht den Passwort Cracker „OrakelCrackert“ für Oracle 11g

Oktober 2nd, 2007

Van Hauser von THC hat mich heute bei einer Tasse Tee darauf aufmerksam gemacht, dass vonjeek/THC am 26. September einen Password Cracker für Oracle 11g auf der THC Webseite namens OrakelCrackert veröffentlicht hat. OrakelCrackert überprüft ungefähr 400.000 SHA-1 Passworte/Seckunde auf meinem 2 GHz Core2Duo und ist damit genauso schnell wie checkpwd 2.0, das nächste Woche veröffentlicht wird.

THC Orakelcrackert 1.00


An dieser Stelle stand bis vor kurzem, dass THCGuesser die Passwortliste von checkpwd verwendet. Dies ist nicht richtig. An dieser Stelle nochmal Entschuldigung für diese falsche Behauptung.

Weiterhin richtig ist und bleibt, dass das „Ausleihen“ von Textdateien öfters praktiziert wird, z.B. bei der von mir zusammengestellten Liste von Standard SIDs (z.B. von sidguesser von Cqure bzw. ora-getsid von NGS Software oder dem russischen Tool coss). Diese Tools verwenden meine Liste, die auch meine privaten SIDs meiner Testsysteme enthalten ….

Neue Version von Sidguess

Oktober 2nd, 2007

Gestern habe ich eine aktualisierte Version von sidguess für Windows und MacOS hochgeladen. In dieser Version (1.0.2) funktioniert nun der Brute Force Modus zum Erraten der SIDs korrect.

Oracle 0xDEADF00D

September 22nd, 2007

Thorsten Schröder und Felix „FX“ Lindner von Recurity Labs GmbH haben gerade einen sehr lesenswerten Artikel über die Erfahrungen bei der Suche nach dem neuen Oracle 11g Passwort-Algorithmus gepostet.

Oracle Password Algorithmus 11g – PoC Code

September 21st, 2007

Mit Oracle 11g hat Oracle einen neuen Algorithmus zum Hashen der Oracle-Passworte gewählt. Anstatt des alten Hash-Verfahrens, das auf DES basiert, verwendet der neue Algorithmus SHA-1. Weiterhin ist neu, dass nun auch Groß- und Kleinbuchstaben unterstützt werden.

Unser Partner, Recurity Labs GmbH, einer der führenden Experten für reverse Engineering, hat sich den neuen Oracle Passwort Algorithmus angesehen. Ein Blog-Eintrag mit der Analyse des Oracle Password Algorithmus von Recurity GmbH findet sich hier.

Thorsten Schröder von Recurity Labs GmbH (die vor kurzem umbenannte S*bre Labs GmbH) hat auch ein kleines Python Script geschrieben. Die an Oracle 11g angepasste checkpwd Version 2.0 und Performance-Werte gibt es am Montag.

Die Veröffentlichung des Oracle Passwort Algorithmus ist kein Security Problem, sondern hilft, auch 11g Datenbanken auf schwache Passworte zu überprüfen.

#!python

# „PoC“ Oracle 11g Database password-hash cracker
# This program uses the password hash value „spare4“ from the internal
# oracle user-database and a list of passwords via stdin to calculate a new
# hash value of the plaintext password. The new generated hash value is subsequently
# compared against the hash-value from sys.user, the internal oracle user-database.

# Author: Thorsten Schroeder <ths „theAthing“ recurity-labs.com>
# Berlin, 19. Sep. 2007

# TODO:
# cut passwords at length 30

import hashlib
import binascii
import sys

def main():

if( len(sys.argv[1]) != 60 ):
usage()
sys.exit(1)

try:
oraHash = sys.argv[1]
oraSalt = oraHash[40:60]
oraSha1 = oraHash[:40]
oraSha1 = oraSha1.upper()

print „[+] using salt: 0x%s“ % oraSalt
print „[+] using hash: 0x%s“ % oraSha1

for passwd in sys.stdin:
passwd = passwd.rstrip()
#print „[*] trying password „%s““ % passwd

s = hashlib.sha1()
s.update(passwd)
s.update(binascii.a2b_hex(oraSalt))
if( s.hexdigest().upper() == oraSha1 ):
print „[*] MATCH! -> %s“ % passwd
sys.exit(0)

except Exception, e:
print „[!] Error: „, e
usage()
raise

sys.exit(0)

def usage():
print „[+] usage: ./ora11gPWCrack.py <hex-value> < wordlist.txt“
return

if __name__ == ‚__main__‘:
main()

Kommendes Oracle Patchset 10.2.0.4

September 12th, 2007

Im heutigen Oracle Security Training habe ich bei der Übung „Oracle Metalink Hacking“ die ersten Informationen zum Oracle Patchset 10.2.0.4  (erfordert Metalink-Account) gefunden. Wie üblich beschreibt Oracle vorab, welche Fehler im kommenden Patchset 10.2.0.4 korrigiert werden.

Beim Lesen der Fehlerliste wurde mir ein wenig unwohl. Zwar wusste ich, dass es ab und zu bei Abfragen in Oracle falsche Ergebnisse gibt (speziell bei Outer-Join-Syntax, daran laboriert Oracle seit Jahren), aber die Liste der Fehlerkorrekturen „Wrong Results“ ist mit 80 schon recht beeindruckend.

80 Fehler „Wrong Results“:
z.B. Wrong Results with with count() and IS NULL, Wrong results from CONNECT BY query, wrong results (no rows) from ANSI outer join, Wrong results using more than one OLS policy on a table, ….

Im Patchset sind auch einige Fehler mit „Security-Potential“ sind darunter. Vielleicht geht es aber auch nur mir so, dass mich Fehler wie

FGA records are not written for view on remote table (5860927),  Wrong results from V$XML_AUDIT_TRAIL (4596532), Dump in HS with very long TNS connect string (4767996),   Spin using UTL_TCP / UTL_HTTP (4686467), …

beunruhigen.

Oracle Jinitiator ActiveX control enthält mehrere Stack Buffer Overflows

August 30th, 2007

Wie das US Cert im folgenden Advisory berichtet, enthält das ActiveX Control des Jinitiator 1.1.18.16 und früher mehrere Buffer Overflows, die Remote Code Execution erlaubt. Da dieses Control bei der Neuinstallation nicht entfernt wird, sind viele Systems davon betroffen. Da es keine Patches dafür gibt, empfiehlt das Cert ActiveX komplett zu deaktivieren (was meistens keine Alternative ist) oder aber das entsprechende Killbit zu setzen.

Die folgende Datei sollte als Textdatei abgespeichert und ausgeführt werden. Weitere Details zu Killbits und ActiveX findet man bei Microsoft in der Support-Note 240797.

———–killbit.reg—————

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{9b935470-ad4a-11d5-b63e-00c04faedb18}]
    "Compatibility Flags"=dword:00000400

———–killbit.reg—————

Exklusive Partnerschaft zwischen Red-Database-Security GmbH und Pete Finnigan Ltd.

August 21st, 2007

Red-Database-Security GmbH und Pete Finnigan Ltd arbeiten ab sofort in einer exklusiven Partnerschaft zusammen:

Eine der ersten gemeinsamen Aktivitaeten ist ein gemeinsames Oracle Anti-Hacker-Training in London, UK vom 29. Oktober bis zum 2. November.
Weiterhin wird Pete Finnigan auf der DOAG mit Alexander Kornbrust den Vortrag: „Best of Oracle Security  2007“ halten.

Oracle-Deutschlandchef Jürgen Kunz über Oracle Security

August 13th, 2007

In einem Interview mit der CZ kommt der Deutschland Chef von Oracle Jürgen Kunz zu einem interessanten Schluss bzgl. Oracle Sicherheit “ Es ist in der Vergangenheit niemandem gelungen, über die Datenbank in unternehmenskritische Applikationen einzudringen“…
Interessant aber definitiv falsch. Wie bei jedem System werden meistens die schwächsten Stellen ausgenutzt. Und z.T. ist das eben die Datenbank, meistens aber die Anwendung. Das hängt vom Angreifer ab.

Bzgl. des Patchmanagements gebe ich allerdings Jürgen Kunz recht, dort sind auch die Anwender gefordert. Auch wenn das in der Vergangenheit nicht immer einfach war (siehe auch Probleme Oracle CPU April 2007 & Oracle 8.0.5 Clients oder Oracle Oktober/Januar CPU führt zur RMAN-Problemen). Oftmals ist auch schlichtweg wegen Patch-Konflikten nicht möglich, die Oracle Patches einzuspielen, weshalb nun die napply-Patches eingeführt wurden.
Oracle Security ist nicht nur ein Problem, das gelöst werden muss, sondern das komplexe Zusammenspiel vieler Faktoren (Oracle DB, Patches, Konfiguration, Anwendungen, DBAs, …). Und da muss jeder seiner Teil dazu beitragen.

Whitepaper über Oracle Forensik

August 12th, 2007

David Litchfield hat auf seiner Seite ein neues, kurzes Whitepaper „Finding Evidence of Data Theft in the Absence of Auditing„veröffentlicht.

In dem Whitepaper beschreibt David, wie man Spuren von Select-Abfragen finden kann, sofern kein Auditing eingeschaltet ist. Dazu verwendet er beispielsweise die View v$sql oder wrh$sqlstat. Dies kann ein Angreifer mit Hilfe eines (private) Synonyms aber umgehen:

SQL> create synonym alex for sys.dba_users;

SQL> select * from alex;

Die Vorgehensweise ist meiner Erfahrung nach meistens nicht in der Praxis einzusetzen, da zwischen einem Vorfall und der Untersuchung oftmals Wochen/Monate vergehen. Bis dahin ist aber V$SQL gelöscht. Und die Tabelle wrh$sqlstat kann vom (cleveren) Angreifer modifiziert werden.

Oracle 11g ist verfügbar

August 10th, 2007

Oracle 11g ist zum download verfügbar (bisher nur Linux).