IP-Spoofing sinnvoll nutzen, wie programmiert man es?

SchienenHaenger

Active Member
Ich möchte zu bestimmten Zeitpunkten auf die Anfrage einer Anwendung reagieren, anderenfalls das Packet an das ursprüngliche Ziel weiterleiten, ohne dabei im Laufe der weiteren Kommunikation dazwischen zu hängen.

Dazu müsste es doch reichen, die ursprüngliche Source-IP/PORT der anfragenden Anwendung zu nutzen, um mich so aus der Verbindung auszuklinken, oder? Wie bewerkstelligt man so etwas? Ich habe mal von Raw-Sockets gehört, weiss aber nichtgenau, was dahinter steckt und wie gross der Aufwand ist...

Hintergrund: Es geht hier um eine Racingsimulation, welche einmal an Rennen teilnehmen kann, welche über eine Lobby vermittelt werden oder eben auf direktem Weg gleich mit einem ein Rennen hostenden Server in Kontakt tritt.

Diese Lobby ist leider auch seit kurzem für die ursprünglich autarken Rennen per direktem Wege zwecks einer kurzen Abfrage nötig. Leider ist die Verfügbarkeit/Stabilität dieser Lobby unter aller Sau, und so gehen häufiger Rennen den Bach ab, weil man gar nicht erst dran teilnehmen kann.
 
in der theorie geht das wie folgt:

-du sniffst den netzwerkverkehr mit beispielsweise pcap (einer lib extra dafür)
-dann baust du dir aus den abgefangenen informationen ein eigenes packet was du via libnet zum beispiel (eine lib extra zum senden ;) ) dann sendest

ja,das rennt alles über raw sockets.

hier ein paar howtos zu libnet und libpcap:

http://www.phrack.org/phrack/54/P54-07
http://www.packetfactory.net/Projects/libnet/dist/deprecated/manual/6.html#s6.1
http://www.tcpdump.org/pcap.htm


mfg, flas!!
 
man kommt imo auch ohne pcap aus. ich hab noch code von nem projekt von mir was zur anonymen kommunikation auch raw sockets benutzt (das projekt ist im moment leider auf eis).
damit kann man gespoofte udp pakete verschicken(andere ip pakete drauszumachen sollte nicht schwehr sein). der code läuft auf windows und unix (jeweils eigene code abschnitte), in unix braucht das ding suid root wobei es die sofort dropped und jeweils nur zum öffnen der raw sockets wiederaufnimmt.
ich kann dir die cpp und h datei die für raw sockets verantwortlich sind schicken, wenn du möchtest (es sollte nciht alzu schwher sein ein eigenständiges programm draus zu machen, ich glaube da ist sogar noch ne auskommentierte main() drin).
sag bescheid wenn du sie willst!
mfg
hannes

edit: hm mit dem code kannst du nur manipulierte pakete VERSCHICKEN; zum lesen haben wir qsockets verwendet... vielleicht brauchst du dafür schon pcap, weiß nicht...
 
Zurück
Oben