Mit einer MITM nach Malware suchen

rat

0
Man in the Middle und Mac Flood


heute gibt es mal ein Tutorial von mir was sich nicht mit Bot netzen befast, sondern mit einem Man in the Middle Angriff.

Damit ich mir die Finger nicht wund tippe eine Kopie aus Wiki.
Ein Man-in-the-middle-Angriff (MITM-Angriff), auch Janusangriff (nach dem doppelgesichtigen Ianus der römischen Mythologie) genannt, ist eine Angriffsform, die in Rechnernetzen ihre Anwendung findet. Der Angreifer steht dabei entweder physikalisch oder – heute meist – logisch zwischen den beiden Kommunikationspartnern und hat dabei mit seinem System vollständige Kontrolle über den Datenverkehr zwischen zwei oder mehreren Netzwerkteilnehmern und kann die Informationen nach Belieben einsehen und sogar manipulieren. Die Janusköpfigkeit des Angreifers besteht darin, dass er den Kommunikationspartnern das jeweilige Gegenüber vortäuschen kann, ohne dass sie es merken.

rat-albums-mitm1-picture28-1.png



Arten der Angriffe
Diese Sonderstellung zwischen den Kommunikationspartnern kann beispielsweise auf folgende Arten erreicht werden:


Angreifer befindet sich im selben LAN wie der Angegriffene:
Der Angreifer hat physikalischen Zugang zu den Datenleitungen.
Im Ethernet modifiziert der Angreifer die ARP-Tabellen der Opfersysteme und leitet dadurch den gesamten Datenverkehr durch sein System. Diese Methode ermöglicht auch das Abhören des Datenverkehrs an Switches, siehe ARP-Spoofing. Diese Verfahren funktioniert immer dann, wenn der Angreifer und das Opfer im selben lokalen Netz sind. Dies ist auch bei Kabelnetzanbietern und z. B. bei öffentlichen WLAN-Hotspots gegeben.
Der Angreifer hängt am selben Netzwerkbus wie das Opfer, wodurch ohnehin alle Pakete auch bei ihm ankommen. Dies funktioniert allerdings nur noch bei Netzwerken mit Busstruktur, wie z. B. Ethernet mit Hub oder 10BASE2.
Eine weitere Angriffsmethode dieser Art ist das Vorspielen eines falschen DHCP-Servers. Durch Angabe einer falschen Gateway-Adresse zum Internet kann die Kommunikation durch einen Rechner des Angreifers geleitet werden.


Nur für WLAN relevante Angriffe:

Möglich ist bei öffentlichen WLAN-Hotspots das Vortäuschen eines falschen WLAN Access Points durch Snarfing. Auch in diesem Fall leitet der falsche Access Point die Daten - nach Auswertung und gegebenenfalls Manipulation - zum korrekten Access Point weiter.


Weitere MITM-Angriffe:

Der Angreifer hat Kontrolle über einen Router, durch den der Datenverkehr geschleust wird. Dies funktioniert sowohl im WAN als auch im LAN und im WLAN.
Durch DNS-Cache Poisoning gibt der Angreifer eine falsche Zieladresse für die Internet-Kommunikation vor und leitet dadurch den Verkehr durch seinen eigenen Rechner (Poison Routing).


Durch Manipulation der Host-Datei auf dem Rechner des Angegriffenen können trotz Eingabe der echten URL gefälschte IP-Adressen aufgelöst werden. Simuliert der Angreifer dann einen gültigen Webserver, hat er gute Chancen, als MITM unerkannt zu bleiben. Siehe dazu: Pharming


Bekannte Computerprogramme für MITM-Angriffe sind Ettercap und Cain & Abel.


Ethernet capture Setup
http://wiki.wireshark.org/CaptureSetup/Ethernet#head-0b079c29876e30c54d5ab1e83d46627a47ea49f0

So nun genug kopiert, wird Zeit wider eigenen Text mit einzubringen ^^

Was wir brauchen:
Ettercap NG-0.7.3: http://sourceforge.net/projects/ettercap/files/
Wireshark: http://www.wireshark.org
EtherApe: http://etherape.sourceforge.net/download.shtml (Nur für Linux)


Netzklasse
Wer sich in einem Klasse A oder B Netzwerk befindet kann sich mit Cain & Abel die IP und Mac Adressen einfach mit wenigen Klicks holen. Um sie dann mit ettercap aus einer Text Datei zu laden.

rat-albums-mitm1-picture29-2.jpg


Wen ihr die IPs und Mac Adressen von einer Text Datei laden wollt was bei einen Klasse A/B Netzwerk eindeutig besser ist erstellt eine Textfile mit folgendem Inhalt.


10.0.0.1 00:15:0c:f1:3B:cc -
10.0.0.48 00:1d:22:f4:0b:5b -
10.0.0.35 00:1e:80:cd:fa:5d -
10.0.0.50 00:1d:68:61:1f:59 -
10.0.0.27 00:03:0c:04:69:29 -
10.0.0.21 00:0c:29:90:f6:09 -
10.0.0.58 00:1b:9e:4b:b9:3d -


Ettercap NG
Wen wir das ganze über Linux Debian machen wollen dann können wir alles über die Synaptic-Paketverwaltung Installieren.

Unter Linux starten wir ettercap über die Shell mit ettercap -G und bei Windows einfach über die Verknüpfung unter Start -> Programme -> Ettercap NG -> Ettercap

Dann gehen wir Sniff -> Unified Sniffing... und wählen untere Netzwerkkarte aus.
Nun gehen wir auf Hosts -> Scan for hosts oder Load from file...

rat-albums-mitm1-picture30-3.jpg


Wen wir unseren Scan oder unsere liste geladen haben erscheint ein Fenster was Host List heist, hier stehen nun alle unsere Hosts drinnen und mit einem Klick auf Add to Target 1 fügen wir sie hinzu.

rat-albums-mitm2-picture31-4.jpg


Nun klicken wir auf Mitm und auf ARP poisoning.

rat-albums-mitm2-picture32-5.jpg


Nun ein Häkchen bei Sniff remote connections.

rat-albums-mitm2-picture33-6.jpg


Dann nur noch auf Start -> Start sniffing

rat-albums-mitm3-picture34-7.jpg


Wireshark
So nun fangen wir an unsere Daten zu sniffen mit Wireshark, dazu starten wir es einfach wie folgt.

rat-albums-mitm3-picture35-8.jpg


Oder so

rat-albums-mitm3-picture36-9.jpg


Jetzt können wir den gesamten Netzwerk Verkehr mit Wireshark verfolgen. Wen wir unter Linux Arbeiten können wir mit EtherApe die Verbindungen Grafisch angezeigt bekommen was sich sehr gut zu Überwachung des eigenen Netzwerks lohnt.

rat-albums-mitm4-picture37-10.jpg


Mit Wireshark // Ettercap nach Bots suchen

Falls unser Antivirus mal versagt können wir Wireshark und Ettercap nutzten um nach Malware in unserem System zu suchen. Das ganze machen wir unter Wireshark so in dem wir im Filter folgendes eingeben ip.addr == Netzwerk-IP

rat-albums-mitm4-picture38-11.jpg


Um mit Ettercap nach Malware zu suchen machen wir eine Man in the Middle wie oben beschrieben und wir bekommen dann von IRC und HTTP Bots die Daten im Plaintext zu sehn.

rat-albums-mitm4-picture39-12.png


Server.exe im System Eliminieren

Mit Wireshark und Ettercap haben wir nun die Server Connections des Bots finden können aber noch nicht die eigentliche Malware, dieses können wir jetzt machen in dem wir die Eingabeaufforderung öffnen und netstat -o eingeben.
Der Befehl bewirkt dass uns Rechts die Prozess ID angezeigt wird.

rat-albums-mitm5-picture40-13.jpg


Nun können wir mit STRG + ALT + Entf den Taskmanager öffnen, hier sehen wir jetzt noch keine Prozess ID, aber wen wir auf Ansicht -> Spalte auswählen und dann ein Häkchen bei PID (Prozess-ID) machen wird sie uns angezeigt.

Nun können wir unsere Malware entfernen anhand der Prozess-ID

rat-albums-mitm5-picture41-14.jpg


Mac Flooding

MAC-Flooding (auch als Switch-Jamming bekannt) ist eine Technik, um ein geswitchtes Ethernet anzugreifen.

Hintergrund

Ein Switch speichert intern in einer so genannten Source Address Table (SAT) MAC-Adressen, welche sich innerhalb des an ihn angeschlossenen Netzwerksegments befinden. Dadurch hat ein Switch die Möglichkeit, Unicast-Meldungen, welche im Gegensatz zu Broadcast-Meldungen an einen bestimmten Netzteilnehmer (Computer) gerichtet sind, auch nur an den Empfänger weiterzuleiten.

Funktionsweise
In ein Netz bzw. einen Switch werden massenhaft Datenpakete eingeschleust, welche alle eine andere MAC-Adresse enthalten. Der Switch speichert nun jede einzelne der gefälschten/generierten MAC-Adressen, bis sein interner Speicher überläuft. In diesem Fall schaltet der Switch in einen so genannten „Failopen Mode“ um. Dadurch werden nun alle Pakete, ob Unicast oder Broadcast, an alle angeschlossenen Netzteilnehmer gesendet (wie ein Hub). Damit hat ein Angreifer die Möglichkeit, den Netzwerkverkehr mitzuschneiden (sniffen).

rat-albums-mitm5-picture42-15.png


Nun kommen wir zu einer mächtigen Waffe, womit man auf Lanpartys richtig viel Spaß haben kann. Das Mac Flooding macht ihr mit dem Tool arpspoof welches bei dem Programm DSniff dabei ist, hier gilt wider für Linux User die Synaptic-Paketverwaltung.Es gibt Dsniff auch für Windows aber ist sehr schwer zu bekommen, ich habe leider keine Version.

Wir starten die Shell und geben folgende befehle ein. Hierbei ist 10.0.0.11 der Victim und 10.0.0.1 Switch/Router.

# arpspoof für die eine Richtung
sudo arpspoof -t 10.0.0.11 10.0.0.1

Jetzt öffnen wir eine zweite Shell.

# arpspoof für die andere Richtung
sudo arpspoof -t 10.0.0.1 10.0.0.11

Das war mein Tutorial zum Sniffing, ich wünsche euch viel Spaß.

mfg rat

-------------------------------------------------------------------------------------------------------------------------------------------------------------


So oben im Tutorial habe ich euch gezeigt wie ihr mit einer Man in the Middle Daten klauen könnt oder um euren eigenes Netzwerk zu Überwachen und damit nach Malware zu suchen. Aber wie kann ich mich gegen einen solchen Angriff schützenden selbst Kaspersky Internet Security erkennt den Angriff nicht.

Hier gehe ich wieder auf Windows und Linux ein.


Fangen wir mit Windows an dazu klaue ich mir mal ein paar Zeilen vom den Redmondern aus ihren TechNet.

Konfiguration unter Windows

Alle modernen Windows-Versionen bringen von Hause aus das Kommandozeilen-Programm "arp" mit, über welches der Anwender den ARP-Cache auslesen und beeinflussen kann.
Code:
> arp -a (zeigt den ARP-Cache an)

> arp -s <IP-Adresse> <MAC-Adresse> (fügt einen statischen Eintrag hinzu)

> arp -d <IP-Adresse> (löscht einen Eintrag)


Der Aufruf des folgenden Kommandos löscht den kompletten ARP-Cache.
Code:
> netsh interface ip delete arpcache

Als vorbeugende Schutzmaßnahme ist empfehlenswert, wichtige Einträge wie verwendete Gateways oder Name-Services, die sich im gleichen Netzwerksegment befinden, statisch in den ARP-Cache einzutragen. Mit einer Batch-Datei, die beim Systemstart geladen wird, ist das problemlos zu bewerkstelligen.

Erzeugen eines statischen ARP-Caches

Gehen Sie zum Absichern bestimmter Hosts wie folgt vor:

1. Pingen Sie die Hosts an, die Sie statisch eintragen möchten. Dadurch wird ein Eintrag im ARP-Cache generiert, den Sie wie oben beschrieben auslesen können.

2. Erstellen Sie eine Datei "arpstart.bat" und öffnen Sie diese mit dem Texteditor.

3. Fügen Sie die Adressen wie folgt in diese Datei ein:
Code:
> arp -s <IP-Adresse> <MAC-Adresse>

als Beispiel:

> arp -s 192.168.20.11 00-30-c1-5e-68-74

> arp -s 192.168.20.12 00-05-01-0e-63-21

> arp -s 192.168.20.13 00-03-12-53-68-11

Legen Sie in der Registry im Verzeichnis

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ CurrentVersion\Run einen neuen Eintrag als Zeichenfolge (REG-SZ) an und verweisen Sie damit auf die erstellte Batch-Datei; zum Beispiel c:\arpstat.bat. Damit wird bei jedem Systemstart das Skript geladen und die Einträge fest in den Cache geschrieben.

Ein Fehler in der ARP-Implementierung von Windows XP erlaubt jedoch, auch einen statischen ARP-Cache zu überschreiben, weswegen vor der Installation des statischen ARP-Caches die entsprechenden Hotfixes zu installieren sind. http://support.microsoft.com/kb/842169

rat-albums-mitm6-picture43-16.jpg


Untouchable: Ein statischer ARP-Cache hilft, böswillige Veränderungen an der MAC/IP-Zuordnung zu verhindern.

Tools für Windows
Als präventive Schutzmaßnahme empfiehlt es sich, in jedem Netzwerksegment das Tool XArp im Hintergrund mitlaufen zu lassen. Das Programm protokolliert sämtliche Veränderungen in der Zuordnung zwischen IP-und MAC-Adresse und stellt diese übersichtlich dar.

rat-albums-mitm6-picture44-17.jpg


XArp: XArp erkennt nur Veränderungen im ARP-Cache des eigenen Hosts.

So kann man das unter Windows machen, unter Linux verwenden wir das Programm ArpWatch welches in der Large ist das gesamte Netzwerk zu Überwachen und nicht nur den eigenen Computer wie es Windows macht.

Beschreibung
ARPwatch zählt nicht zur den Vollwertigen IDS Programmen sondern zur der Software die sich auf eine spezielle Art von Angriffen spezialisiert haben. So ist ARPwatch nur in der Lage solche Angriffe zuerkennen die durch eine Manipulation des ARP Protokolls durchgeführt werden. Zur solchen Angriffen zählt zum Beispiel ARP Spoofing.

Wer Debian verwendet kann das ARPwatch unter der Synaptic Installieren.

Wen wir es installiert haben starten wir eine Shell und erstellen folgende Datei.
Code:
vi /var/lib/arpwatch/arp.dat

Nun öffnen wir die Confing mit vi,nano oder gedit
Code:
vi /etc/arpwatch.conf

Wir tragen nun folgende Zeile Hinzu.

eth0 -a -n 192.0.0.0/24 -m User@Computername

Nun Restarten wir ARpWatch
Code:
/etc/init.d/arpwatch restart

So nun öffnen wir bei mir unter Debian E-Mail - Evolution ist Standartmäßig dabei.
Wir erstellen ein neues Konto unter Bearbeiten -> Einstellungen -> Hinzufügen

In das Feld E-Mail-Adresse geben wir unseren Linux User ein und den Systemnamen.

rat-albums-mitm6-picture45-18.png


Dann auf Vor und unter Server-Art: wählen wir Standard-Unix-mbox-Spool-Datei und als Pfad /var/mail/username bei mir ist das enel

rat-albums-mitm7-picture46-19.png


Dann auf vor, in welchem zeitabstand er die Mail checken soll könnt ihr selber bestimmen und auf Vor, hier geben wir SMTP und Localhost an.

rat-albums-mitm7-picture47-20.png


Weiter mit Vor und dann Anwenden.

So nun haben wir Unser Konto und wen wir das aufklappe mit dem kleinen Pfeil an der Seite den Posteingang.

Wen wir jetzt mit Ettercap eine Man in The Middle starten werden wir eine ganze Reihe Mail bekommen was uns zeigt das es Funktioniert.

rat-albums-mitm7-picture48-21.png


So können wir beobachten ob uns jemand belauscht, Bots sind auch in der Large Man in the Middle Attacken auszuführen ,besonders viele rbot und RxBot sowie einige nzm varianten.


by rat
 
Zuletzt bearbeitet:
Zurück
Oben