dimis linkdump

Ein täglicher auf den ISC-Blog von SANS lohnt sich definitiv. Heute wurde auf dem ISC-Blog ein interessantes Skript, welches ein User auf einem Server gefunden hat, vorgestellt. Dieses Skript ermöglicht es über PHP eine verteile Bruteforce-Attake auf WordPress-Blogs durchzuführen.

Das Skript bedient sich dazu der Möglichkeit unter PHP cURL zu nutzen.

cURL:

A free and easy-to-use client-side URL transfer library, supporting FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, FILE, LDAP and LDAPS. libcurl supports HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading, kerberos, HTTP form based upload, proxies, cookies, user+password authentication, file transfer resume, http proxy tunneling and more.

Wikipedia

wp-bruteforce1

Es wurde nicht das komplette Skript veröffentlicht, sondern nur einige Code-Snippets. Wer das Skript haben möchte, sollte schnell anfangen zu programmieren ;)

Im ersten veröffentlichten Screenshot erkennt man eine Funktion, die 3 verschiedene Parameter erwartet. $ch ist dabei der Handle, der durch curl_init() erstellt wurde. Das ist im Ausschnitt nicht zu sehen.  An diesen Handle werden nun alle erforderlichen Einstellungen angehängt und am Ende mittels curl_exec($ch) ausgeführt.

Parameter 2 und 3 ergeben sich logischerweise aus ihrem Namen.

Enthält die Antwort des Servers, also die zurückgelieferte Webseite, den Ausdruck “Log Out” war die Brute-Force Attacke erfolgreich. Das wird mittels

[...]

eregi(“Log Out”,$result)

[...]

überprüft.

Interessanter als die Nutzung von cURL in PHP ist die Möglichkeit, Seiten, die gecrackt werden sollen, in einer zentralen Instanz zu verwalten um verteiltes Cracken zu ermöglichen.

wp-bruteforce2

Zunächst holt sich das Skript aus einer zentralen MySQL-Datenbank 200 URLs, die gecrackt werden sollen und markiert diese in der Datenbank mit seiner persönlichen “colo_id”. Bricht das Skript nun aus irgendeinem Grund ab, holt sich das Skript die vorher markieren Einträge wieder aus der Datenbank und kann an der Stelle weitermachen, an der es abgebrochen wurde. Genau diesen Schritt stehen wir hier in diesem Screenshot:

Mittels “select url, site_type from site where colo_id=’$colo_id’” werden die Einträge aus der Datenbank geholt, an denen dieser “colo”, also dieses Skript, vorher gearbeitet hat.

Interessant ist auch die Möglichkeit, Passwortlisten zentral in einer Datenbank zu speichern und so allen Skripts zur Verfügung zu stellen.

Auf jeden Fall eine interessante und erwähnenswerte Idee, wie ich finde.

Im letzten Blogartikel ging es um Wireshark – einen Netzwerksniffer. Heute will ich einen weiteren Netzwerksniffer vorstellen: NetworkMiner. Dieser Sniffer bezeichnet sich selbst als NFAT (Network Forensic Analysis Tool). Anders als Wireshark legt NetworkMiner nicht den Schwerpunkt auf die Darstellung der einzelnen Pakete, sondern darauf die Kommunikation als Gesamtes darzustellen.

Voraussetzungen für das erfolgreiche Ausführen des portablen Programms ist ein installiertes .net-Framework. Um Datenverkehr live mitzuschneiden benötigt man noch Winpcap, alternativ kann das Programm auch über RAW-Sockets den Datenverkehr mitschneiden.

NetworkMinerNetworkMiner selbst ist in diverse Reiter unterteilt. Im ersten Reiter werden die bei der Netzwerkkommunikation involvierten Partner angezeigt. Besonders interessant dabei: Die bei der Kommunikation verwendeten Ports werden hier pro System als “open ports” aufgelistet. Außerdem werden auch, wie auf dem Bild schon ersichtlich, die verschiedenen Hostnamen je IP angegeben. Zusätzlich versucht NetworkMiner die Betriebssysteme der verschiedenen Hosts zu identifizieren. Je nach Betriebssystem wird ein anderes Symbol für den Host verwendet. (2)

Im dritten Reiter wird die Sache wirklich interessant. Hier werden alle Dateien angezeigt, die über die diversen Anwendungsprotokolle auf den PC geladen wurden. Im folgenden Beispiel sieht man, dass über HTTP (HTTPGetNormal) diverse Dateien, z.B. die index.html,NetworkMiner logo.gif oder ein rss-Feed-Update (rss2.xml) heruntergeladen wurden. Ebenso erkennt man, dass über FTP die mirc60.exe heruntergeladen wurde. Zudem werden die heruntergeladenen öffentlichen Zertifikate angezeigt.
Besonders hervorzugeben: Über einen Rechtsklick auf einen Eintrag, kann diese Datei angezeigt oder geöffnet werden. D.h. im Hintergrund stellt NetworkMiner die Dateien aus dem genifften Verkehr wieder her und speichert diese auf der Festplatte ab. So ist es besonders einfach möglich aus Mitschnitten Dateien und ganze Webseiten etc, zu rekonstruieren.

NetworkMinerUnter dem Reiter “Images” können, das lässt sich schon vermuten, die mitgeschnittenen Bilder angezeigt werden. An dieser Stelle möchte ich nochmal an meinen letzten Blog-Artikel verweisen. Darin ging unter anderem auch darum, wie man “geschützte” Bilder von *VZ herunterlädt. Im NetzworkMiner lässt sich dieser Schritt natürlich schnell und problemlos erledigen, da Thumbnail sowie Vollbild in diesem Reiter angezeigt werden.

Der Reiter “Credentials” findet man z.B. die Login-Daten von unverschlüsselten FTP-Verbindungen oder PHP-Session-IDs. Eben alles was so zu Authentifizierung gehört.

Fazit: Ich bin wirklich begeistert von diesem Tool. Vor allem, dass die Dateien aus dem Mitschnitt des Netzwerkverkehr  wieder zusammengesetzt werden finde ich besonders super.  Ein Blick und einausführlicher Test lohnen sich.

Download und weiter Informationen:

http://sourceforge.net/projects/networkminer/

RSS-Feed Creative Commons License