ARP Spoofing funktioniert nicht

Hallo,
Ich habe mir ein kleines ARP-Spoofing-Programm geschrieben.Eigentlich schickt er nur jede sekunde eine gefakte who-is Arp Anfrage.Ich habe:

-IP Forwardig aktiviert

-ICMP Redirect senden/annehmen deaktiviert.

Jetzt habe ich auf dem Opfer-PC ein Programm geschrieben was jede sekunde ein TCP Paket versendet.Jedoch habe ich jetzt folgende Probleme:

-Die TCP Pakete kommen an dem richtigem Pc(in dem Fall Router) an

-In der ARP-Tabelle des Opfers steht einmal die gespoofte IP mit meiner MAC,dann jedoch auch meine RICHTIGE IP mit meiner MAC

Wenn ich auf dem Opfer-PC einen Ping ausführe,dann kommen die Pakete jedoch bei mir an.

Danke schonmal im Vorraus,
TheNew3000
 
Verstehe ich das richtig?
Du hast Dein Angriffsziel (Z), Deinen Router (R) und Den Rechner von dem Du das ARP-Spoofing machst (A).

Z sendet regelmäßig TCP-Pakete an R, die auch ankommen obwohl Du sie durch ARP-Spoofing zu A leiten möchtest?

A schickt hierfür ARP-Requests?
Auf welche Weise sind diese Requests gefaked, also wie sehen die Pakete dafür aus?
 
Die Request haben als Absender IP die gespoofte IP(also die von R) und als Absender MAC meine MAC.Müsste das nicht auch mit request gehen oder geht das nur mit reply?
 
Versuche es doch einfach mal mit einem ARP-Reply.

Was mich wundert ist, dass es der ARP-Table nach geklappt zu haben scheint.
Wie sind die beiden Rechner denn miteinander verbunden?
 
Bei einem ARP Reply wird die ARP-Tabelle beim Opfer nicht modifiziert.

Mein Opfer-PC ist mit dem Router per LAN verbunden,mein richtiger per WLAN.Kann das auswirkungen haben?
 
Vielleicht nochmal RFCs lesen wie ARP funktioniert und das OSI-Modell aussieht? :p

Die Request haben als Absender IP die gespoofte IP(also die von R) und als Absender MAC meine MAC.

ARP ist ein eigenes Protokoll, das auf Layer 2 aufsetzt und nicht auf IP (Layer 3). Gefakte IP-Pakete bringen daher nichts, da IP eine Ebene obendrüber stattfindet.

Ganz grob erklärt:
Jedes System, das an einer Netzwerk-Kommunikation beteiligt ist, sendet mehrfach ARP-Anfragen auf Layer 2 (da gibts noch kein IP, also werden die Frames über MAC-Adressen addressiert) an die Broadcast-Adresse FF:FF:FF:FF:FF:FF. In den Anfragen steht sowas wie "Who has 192.169.2.2? Tell 192.168.2.1".
Diese IP-Adressen werden bei der ARP-Kommunikation jedoch nicht verwendet, denn das System möchte ja eben wissen wer diese IP-Adresse innehat. Wenn er wüsste welches System diese IP-Adresse verwendet, müsste er ja nicht nach der Adresse fragen. :)
Da diese Anfragen gebroadcastet werden, bekommt sie jeder Host im Netzwerk und das System, das diese IP-Adresse verwendet, antwortet an die MAC-Adresse von der die ARP-Anfrage stammt (funktioniert also ähnlich wie DNS, nur viel primitiver).

Wenn du also einfach stupide IP-Pakete mit dem Text als Payload sendest, machst du keine ARP-Kommunikation und somit auch kein ARP-Spoofing.
 
Wenn du also einfach stupide IP-Pakete mit dem Text als Payload sendest, machst du keine ARP-Kommunikation und somit auch kein ARP-Spoofing.

Das ist mir klar und das habe ich ja auch nicht gemeint :rolleyes:.

Ich meinte mit "Absender IP" die IP die in dem ARP Paket enthalten ist,damit das Ziel die ARP-Tabelle erneuern kann.
 
Es gibt wohl ein paar Systeme, die auch die über Broadcast empfangenen ARP-Requests auswerten und die Infos in ihren Cache schreiben.
Ich habe das zumindest öfters gelesen und gehört, welche das wären weiß ich leider nicht.

Bei einem ARP Reply wird die ARP-Tabelle beim Opfer nicht modifiziert.

Also solltest Du ein ARP-Reply mit "192.168.1.1 hat MAC 11:22:33:44:55:66" (IP mit der des Routers und MAC mit Deiner ersetzen ;)) an Dein Angriffsziel schicken so übernehmen viele Systeme diese Info in ihren ARP-Cache auch wenn sie die nicht angefordert haben.
Ansonsten könntest Du Dein Opfer immernoch damit vollspammen in der Hoffnung, dass dann wenn ein Request geschickt wird Deine Antwort schneller ist als die des Routers ;)
 
Das ist mir klar und das habe ich ja auch nicht gemeint :rolleyes:.

Dann habe ich euch missverstanden. Sorry. Bin nur davon ausgegangen, da ihr von TCP und Absender IP gesprochen habt und das nun mal nichts direkt mit ARP zu tun hat.

Vom grundlegenden Ablauf müsste eine MITM-Attacke auf ARP-Ebene so funktionieren:

Ziel:
IP: 192.168.2.10
MAC: 00:00:00:00:00:10

Du:
IP: 192.168.2.5
MAC: 00:00:00:00:00:05

Router:
IP: 192.168.2.1
MAC: 00:00:00:00:00:01

1.) Du versetzt deine Netzwerkkarte in den Promiscuous-Mode.
2.) Du sendest per Unicast dauerhaft ARP-Replies an dein Ziel mit folgendem Inhalt
192.168.2.1 is at 00:00:00:00:00:05
3.) Du sendest per Unicast dauerhaft Replies an den Router mit dem Inhalt
192.168.2.10 is at 00:00:00:00:00:05
4.) Du leitest den Traffic von beiden Seiten weiter (z.B. mit einer IP-Tables-Regel)

Ich bin nicht sicher, vermute aber, dass du die Header nicht verändern musst. Der Inhalt sollte reichen. Und beim dauerhaften Senden der Replies würde ich noch auf das Intervall achten, ansonsten könnte es sein, dass einer der Rechner in die Knie geht. ;)
 
Sorry das ich erst so spät antworte,musste noch was erledigen...


1.) Du versetzt deine Netzwerkkarte in den Promiscuous-Mode.

Daran wird es liegen...Meine Netzwerkkarte unterstützt das nicht X(
Habe auch einen laptop,das heißt ich kann sie auch nicht so leicht rausnehmen(schrauben durchgedreht :p)...Gibt es denn noch eine möglichkeit?Oder einen WLAN-Stick der den Promiscous Mode unterstützt?
 
Zurück
Oben