Honeypot

Aus C3MAWiki
Dies ist ein Projekt, an dem momentan aktiv gearbeitet wird. Wenn du Fragen hast oder mitarbeiten möchtest, wende dich an Yorn.

Honeyp0tse und b0tse

Wir versuchen durch die Verwendung von Honeypots Botnetze zu finden und zu analysieren.

Anwendung findet dabei nepenthes (nicht zu verwechseln mit der fleischfressenden Pflanze, von der der Honeypot aber wohl seinen Namen hat.

Aufgesetzt ist das ganze auf einem linux server in einer beliebten, deutschen IP range. :-)

Nepenthes Honeypot fungiert dabei als server, der auf allen ports lauscht die für einen Angreifer attraktiv sein könnten.

Unter anderem sind dies:

Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2006-11-29 02:41 CET Interesting ports on ip-honeypot.de (honeypot): Not shown: 1656 closed ports PORT STATE SERVICE 21/tcp open ftp 22/tcp open ssh 25/tcp filtered smtp 42/tcp open nameserver 53/tcp open domain 80/tcp open http 110/tcp open pop3 135/tcp filtered msrpc 139/tcp filtered netbios-ssn 143/tcp open imap 220/tcp open imap3 443/tcp open https 445/tcp filtered microsoft-ds 465/tcp open smtps 993/tcp open imaps 995/tcp open pop3s 1023/tcp open netvenuechat 1025/tcp open NFS-or-IIS 2105/tcp open eklogin 3372/tcp open msdtc 4444/tcp filtered krb524 5000/tcp open UPnP 10000/tcp open snet-sensor-mgmt 17300/tcp open kuang2

Nmap finished: 1 IP address (1 host up) scanned in 9.974 seconds

BTW: Man beachte, dass die ports 139 und 445 gefiltert werden! Das ist KEINE Einstellung von uns, sondern scheint generell ein Filter von diversen Providern zu sein. Getestet haben wir dabei 4 verschiedene. Bei allen werden die netten netbios Sachen gefiltert, was recht schade ist wenn man bedenkt, dass darüber die meisten exploits ansetzen...

Damit sind die meisten gängisten Sicherheitslücken vertreten. Nepenthes macht jetzt den lieben langen Tag nichts anderes als sich darum zu kümmern die Ports offen zu halten und jeglichen Angriff oder Connect zu protokollieren und zu archivieren.

Nepenthes führt dabei erstmal logs über besondere events. Zum einen loggt nepenthes Aufforderungen Dateien herunterzuladen:

[2006-11-06T09:33:44] tftp://82.224.XX.180/winmsfws.exe 1acb01f89fdee44bddde439c8b4437ca [2006-11-06T11:13:24] tftp://217.XXX.233.54/winmsfws.exe 06133e07fbc11763f69b10391d2c9c68 [2006-11-06T11:51:46] tftp://85.225.XXX.169/winmsfws.exe 1acb01f89fdee44bddde439c8b4437ca [2006-11-06T13:00:10] creceive://85.XX.68.50:3949 7dc73bfa4d78284155dd5101991eeb34 [2006-11-06T13:07:55] tftp://213.XXX.200.153/winmsfws.exe 1acb01f89fdee44bddde439c8b4437ca [2006-11-06T15:24:09] creceive://85.XXX.65.70:1763 7dc73bfa4d78284155dd5101991eeb34 [2006-11-06T15:35:11] ftp://a:a@85.24.XX.88:5253/ms0x1.exe 51bad4670fdac0ea1d53bd7a650626a9 [2006-11-06T17:34:49] creceive://85.47.XX.98:3984 7dc73bfa4d78284155dd5101991eeb34 [2006-11-06T20:36:42] ftp://1:1@85.144.XXX.8:28881/infors32.exe 2421b62f9ebd6ee43d4f3c65d6b7d523

Wie man sehr schön sehen kann werden uns da jede Menge files angeboten. Egal ob über http / ftp / tftp / oder http, Bots sprechen eigentlich alles was nötig ist um sich mit updates aus dem Netz zu versorgen. Meist steckt dies direkt im Payload des Exploits, also download and execute um dann die malware zu installieren.

Nepenthes macht natürlich gute Miene zum bösen Spiel und lädt sich brav die angebotene malware runter. Bei Erfolg wird dies ebenfalls geloggt:

[2006-11-06T04:06:00] ftp://1:1@85.XXX.67.159:28876/faleh32.exe [2006-11-06T05:18:15] ftp://1:1@85.XXX.140.60:46345/wulogin.exe [2006-11-06T05:52:18] tftp://10.0.XX.162/winmsfws.exe [2006-11-06T06:42:55] link://85.XXX.79.149:5548/AQAAAA== [2006-11-06T09:32:39] tftp://82.XX.158.180/winmsfws.exe [2006-11-06T10:43:21] tftp://192.168.1.5/teekids.exe [2006-11-06T10:46:12] http://213.XXX.214.106/CMD.gif

Interessant ist dabei auch immer wieder zu sehen: [2006-11-07T00:38:19] tftp://192.168.116.2/h3110.411

  • offensichtliche config Fehler, man beachte zB die IP... *duh*

ftp://1:1@85.25.XXX.150:13334/rxbot.exe

  • nicht mal die Mühe gemacht dem Bot einen anderen Namen zu geben. rxbot ist übrigens eine relativ verbreitete Variante...

[2006-11-06T06:42:55] link://85.XXX.79.149:5548/AQAAAA==

  • hier wurde die endgültige exe verschlüsselt. Meist recht einfach zu knacken...

Ist dann die binary heruntergeladen fertigt nepenthes eine md5sum an und legt das binary in ein folder. Ist die autosubmit Funktion in der config aktiviert schickt nepenthes die binary auch gleich an eine Antivir Firma und man erhält wenig später ein Log zurück, was über die binary in Erfahrung zu bringen war...

Was kann man aus diesem Log sehen? nepenthes-76389087a2f500a7eccca868e5aa7724-MsnWin32e.exe : W32/Spybot.gen3 (Signature: W32/Spybot.ZYI)

[ General information ]
   * Decompressing Mew.
   * **Locates window "NULL [class mIRC]" on desktop.
   * File length:        79748 bytes.
   * MD5 hash: 76389087a2f500a7eccca868e5aa7724.
[ Changes to filesystem ]
   * Creates file C:\WINDOWS\SYSTEM32\MsnWin32e.exe.
   * Deletes file 1.
[ Changes to registry ]
   * Creates value "Microsoft Update Emulator"="MsnWin32e.exe" in key "HKLM\Software\Microsoft\Windows\CurrentVersion\Run".
   * Creates value "Microsoft Update Emulator"="MsnWin32e.exe" in key "HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices".
   * Creates value "Microsoft Update Emulator"="MsnWin32e.exe" in key "HKCU\Software\Microsoft\Windows\CurrentVersion\Run".
[ Network services ]
   * Looks for an Internet connection.
   * Connects to "iso.XXX.net" on port 12347 (TCP).
   * Sends data stream (12 bytes) to remote address "iso.XXX.net", port 12347.
   * Connects to IRC Server.
   * IRC: Uses nickname ezkieyac.
   * IRC: Uses username ezkieyac.
[ Security issues ]
   * Possible backdoor functionality [Authenticate] port 113.
[ Process/window information ]
   * Creates a mutex kh.
   * Will automatically restart after boot (I'll be back...).
[ Signature Scanning ]
   * C:\WINDOWS\SYSTEM32\MsnWin32e.exe (79748 bytes) : W32/Spybot.ZYI.

Da steht alles was man wissen muss... Jetzt kann man sich theoretisch den Spass machen ein solches Botnetz mal live zu besuchen, davon rate ich aber nachdringlich ab!!! Wen es dennoch brennend interessiert muss wissen was er tut und auf was er sich einlässt, mit einem M$ OS wär ich da sehr vorsichtig....

Connectet man also auf den server (wenn man weiss was man tut), dann findet sich dort ein meist bis ins letzte verkrüppelter IRCd, der ungefähr GARKEINE Informationen mehr zurückgibt. Teilweise sind die IRCds so stark in der Funktionalität eingeschränkt, dass man nicht mal merkt das man connectet ist. Im Channel bietet sich dann meist das gleiche Bild. Über das topic werden den Bots kryptische Befehle gegeben, die die Zombies dann gnadenlos ausführen. Ich hatte einmal das Glück einen Botmaster anzutreffen (also der Typ dem das Botnet gehört), ich werde bei Gelegenheit das Log von meinem Chat mit ihm auszugsweise posten. Auch ein paar Bilder...

Siehe Diskussionsseite... --Yorn 22:11, 4. Apr. 2008 (CEST)

Die nepenthes Logs sind enorm hilfreich und erleichtern einen eventuelles reverse engineeren oder testen des bots in einer vmware. Diese Biester wehren sich übrigens mittlerweile aktiv dagegen und erkennen ob sie in einer vmware laufen oder am debugger hängen. Zudem sind die binaries zusätzlich verändert um möglichst wenig infos preiszugeben.

Nepenthes hat auch noch einen Log Ordner in dem die kompletten Hexdumps der Zugriffe auf die offenen ports verzeichnet sind. Von dort aus erkennt man dann auch gut um welchen Exploit es sich handelt:

GET XXX/../../../../../../../../../../../x/x HTTP/1.1

  • webmin exploit, verändert...

70c3b207bf8a5e1e23f99738aae11600.bin:GET //scgi-bin/awstats/awstats.pl HTTP/1.1

  • awstats remote command execution...

Durchaus eine sehr interessante Sache sich einmal auf die Jagd nach Bots zu begeben. Ich werde weiterhin updaten wenn sich etwas interessantes findet...

--Yorn 03:47, 29. Nov. 2006 (CET)

Update 28.10.2008

Die letzten Tage ist das hier ja mehr oder minder heftig eingeschlagen. Ich hab meinen Honeypot mal aufgestellt und siehe da: Kabel-BW blockt port 135 nicht mehr! :) Ich hatte ca. 300 hits auf DCOM in einer Stunde. Der Shellcode war loader, der sich von link://78.42.73.190:18635/b1ew1Q oder ftp://rlyjma:rlyjma@78.42.187.137:1364/wmsoft40137.exe lustige Spielsachen zieht. Letzteres ist ein verkrüppelter ftp. Ein Botnet via irc war auch wieder dabei. Zur Zeit lohnt sich das honeypotten! --Yorn 20:23, 28. Okt. 2008 (CET)