
IBM/Lotus Domino Ausnutzung
Domi-Owned ist ein Tool, das für die Kompromittierung von IBM/Lotus Domino-Servern verwendet wird.
Getestet auf IBM/Lotus Domino 8.5.2, 8.5.3, 9.0.0 und 9.0.1 unter Windows und Linux.
Domi-Owned verwendet Python 3, das über den Paketmanager Ihrer Distribution (apt, yum usw.) installiert werden kann.
Führen Sie pip3 install -r requirements.txt aus, um die erforderlichen Python-Module zu installieren.
Ein gültiger Benutzername und ein Passwort sind nicht erforderlich, es sei denn, 'names.nsf' und/oder 'webadmin.nsf' erfordern eine Authentifizierung.
Wenn Sie Domi-Owned mit dem Aktionsargument fingerprint und einer URL ausführen, wird versucht, die Version des Domino-Servers zu identifizieren und zu prüfen, ob 'names.nsf' und 'webadmin.nsf' eine Authentifizierung erfordern.
Wenn ein Benutzername und ein Passwort mit den Argumenten --username und --password angegeben werden, prüft Domi-Owned, ob dieses Konto mit diesen Anmeldedaten auf 'names.nsf' und 'webadmin.nsf' zugreifen kann.
./domi-owned.py fingerprint http://domino-server.com
Um aufzulisten, welche gängigen oder standardmäßigen Domino-Verzeichnisse zugänglich sind, führen Sie Domi-Owned mit dem Aktionsargument enumerate und der Server-URL aus. Optional können Sie Domi-Owned mit einem Benutzernamen und Passwort über die Argumente --username und --password versorgen, um zu sehen, auf welche Verzeichnisse dieser bestimmte Benutzer Zugriff hat. Um eine benutzerdefinierte Verzeichnis-Wortliste zu verwenden, übergeben Sie Domi-Owned eine Datei mit einer Liste von Web-Verzeichnissen mit dem Argument --wordlist.
./domi-owned.py enumerate http://domino-server.com
Um einen Reverse-Brute-Force-Angriff gegen einen Domino-Server durchzuführen, führen Sie Domi-Owned mit dem Aktionsargument bruteforce, der Server-URL und einer Liste von Benutzernamen aus. Optional kann ein Passwort mit dem Argument --password angegeben werden. Wenn kein Passwort angegeben wird, verwendet Domi-Owned den Benutzernamen aus der Benutzerliste als Kontopasswort (z. B. 'admin:admin' oder 'jsmith:jsmith'). Domi-Owned versucht dann, sich bei 'names.nsf' zu authentifizieren und gibt die erfolgreichen Konten aus.
./domi-owned.py bruteforce http://domino-server.com usernames.txt --password PASSWORD
Um alle Domino-Konten mit einem nicht leeren Hash auszugeben, führen Sie Domi-Owned mit dem Aktionsargument hashdump und der Server-URL aus. Optional können Sie Domi-Owned mit einem Benutzernamen und Passwort über die Argumente --username und --password versorgen. Dies gibt die Ergebnisse auf dem Bildschirm aus und schreibt die Konten-Hashes je nach Hash-Typ (Domino 5, Domino 6, Domino 8) in separate Ausgabedateien.
./domi-owned.py hashdump http://domino-server.com --username USERNAME --password PASSWORD
Die Domino Quick Console ist standardmäßig aktiviert; sie zeigt jedoch nicht die Ausgabe der ausgegebenen Befehle an. Eine Umgehung dieses Problems besteht darin, die Befehlsausgabe in eine Datei, in diesem Fall 'log.txt', umzuleiten, die dann als Webseite auf dem Domino-Server angezeigt wird.
Wenn das Aktionsargument quickconsole angegeben wird, greift Domi-Owned über 'webadmin.nsf' auf die Domino Quick Console zu und ermöglicht es dem Benutzer, native Windows- oder Linux-Befehle auszuführen. Optional können ein Benutzername und ein Passwort mit den Argumenten --username und --password angegeben werden. Domi-Owned ruft dann die Ausgabe des Befehls ab und zeigt die Ergebnisse in Echtzeit über einen Befehlszeileninterpreter an. Geben Sie exit ein, um den Quick-Console-Interpreter zu beenden. Nach dem Beenden löscht Domi-Owned die Ausgabedatei 'log.txt'.
./domi-owned.py quickconsole http://domino-server.com --username USERNAME --password PASSWORD
Besonderer Dank: