Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Man-In-The-Middle (https://www.delphipraxis.net/19899-man-middle.html)

OrallY 10. Apr 2004 16:16


Man-In-The-Middle
 
Der Man-In-The-Middle-Angriff ist ja allseits bekannt. Nehmen wir z.B. ein asymmetrisches Verahren des Schlüsselaustausches, bei dem öffentliche Schlüssel ausgetauscht werden, also Daten, die ein dritter ruhig auslesen kann, ohne etwas damit anfangen zu können.
Angreifbar ist es aber durch MITM. A will mit B den Schlüssel austauschen. Jedoch mischt sich X ein und gibt sich A gegenüber als B aus und B gegenüber als A aus.
Doch frage ich mich, wie ist es Möglich die Identität zu fälschen, bzw. interessiert mich, wie das genau stattfindet? Es müsste ja die IP-Adresse gefälscht werden, doch wie macht man das?

Ich beschäftige mich zur Zeit mit diesem Thema und versuche zu verstehen wie ein MITM-Angriff möglich ist. Nur in dem ich dem Schwachpunkt genau verstehe und nachvollziehen kann, wie ein solcher Angriff funktioniert, bin ich in der Lage mein Programm sicherer zu machen. Ich sage dies, um Anschuldigungen über meine "bösen Absichten" vorzubeugen.

Chewie 10. Apr 2004 16:41

Re: Man-In-The-Middle
 
Wie du festgestellt hast, muss eigentlich nur X seine IP-Adresse fälschen. Das geht vom Prinzip her problemlos, da die IP-Adresse rein softwarebasiert ist. Unter Windows ist das mit Raw Sockets möglich.

OrallY 10. Apr 2004 16:58

Re: Man-In-The-Middle
 
Was sind die RAW Sockets bzw. wie benutze ich sie?
Ich nehme an, dass man mit den RAW Sockets den IP-Header fälschen kann, aber trotzdem verstehe ich das nicht so ganz. Wenn ich jetzt eine Nachricht z.B. an 192.168.0.1 schicke, geht das Päckchen doch an alle Computer und nur der richtige nimmt es überhaupt an, oder?
Ok, ich kann nachvollziehen, dass wenn man ein Packet empfängt dem Empfänger eine falsche IP suggerieren kann, jedoch kann ich nicht nachvollziehen, wie man dem Sender als Empfänger eine falsche IP suggeriert?

Chewie 10. Apr 2004 17:59

Re: Man-In-The-Middle
 
Zitat:

Zitat von OrallY
Ok, ich kann nachvollziehen, dass wenn man ein Packet empfängt dem Empfänger eine falsche IP suggerieren kann,

Sorry, den Satz verstehe ich nicht ganz. Wenn du ein Paket empfängst, bist du doch der Empfänger in diesem Moment??

Wg. Raw Sockets:
Wenn du einen Socket erstellst, gibst du das Protokoll an. So bedeutet SOCK_STREAM TCP und SOCK_DGRAM UDP. Es gibt aber auch SOCK_RAW. Damit hast du Zugriff auf alle Daten deines Pakets, inklusive der Header (zumindest ab der 3. Schicht, die unteren beiden werden wohl von der Hardware übernommen).
Wie das genau geht, weiß ich aber auch nicht. Ich hab mich mal vor einiger Zeit auf die Suche nach Informationesmaterial nach Raw Sockets gemacht, hab aber nicht viel gefunden.

Vielleicht hast du mehr Glück beim Suchen :thuimb:

Edit: Schau mal hier!

Edit2: Vorausgesetzt du kannst italienisch :shock:

OrallY 10. Apr 2004 22:14

Re: Man-In-The-Middle
 
Zitat:

Zitat von Chewie
Zitat:

Zitat von OrallY
Ok, ich kann nachvollziehen, dass wenn man ein Packet empfängt dem Empfänger eine falsche IP suggerieren kann,

Sorry, den Satz verstehe ich nicht ganz. Wenn du ein Paket empfängst, bist du doch der Empfänger in diesem Moment??

Ja, kann ich verstehen, dass du den Satz nicht verstehst ;). Da hab ich wohl einen Hund reingebracht. *g*

Ich meinte, dass wenn man ein Packet sendet(!) dem Empfänger eine falsche IP suggerieren kann.

Chewie 10. Apr 2004 22:22

Re: Man-In-The-Middle
 
A würde ja sein Paket mit der IP-Adresse von B versehen. Da du aber in der Mitte sitzt, kannst du alle Pakete abfangen.

OrallY 12. Apr 2004 16:09

Re: Man-In-The-Middle
 
Aber wie kommt man in die Mitte rein? Wenn jetzt z.B: A (z.B. 192.168.0.1) die Verbindung mit B (192.168.0.2) aufbaut, versieht er ja sein Packet mir der IP von B, also 192.168.0.2 . Doch wie kann man jetzt als MITM ein an 192.168.0.2 adressiertes Packet abfangen, wenn man tatsächlich die IP 192.168.0.3 hat.

Robert_G 12. Apr 2004 16:15

Re: Man-In-The-Middle
 
Ich habe da ehrlich gesagt wenig Ahnung von...
Aber wäre es nicht möglich das ganze irgendwie über eine lokale DNS-Auflösung zu basteln.
Könnte man nicht 192.168.0.1 die Info schicken, dass hinter der URL 192.168.0.2 die IP 192.168.0.3 steckt?
Wie hinter google.de die IP 216.239.59.104 steckt.

Chewie 12. Apr 2004 16:26

Re: Man-In-The-Middle
 
Zitat:

Zitat von OrallY
Aber wie kommt man in die Mitte rein? Wenn jetzt z.B: A (z.B. 192.168.0.1) die Verbindung mit B (192.168.0.2) aufbaut, versieht er ja sein Packet mir der IP von B, also 192.168.0.2 . Doch wie kann man jetzt als MITM ein an 192.168.0.2 adressiertes Packet abfangen, wenn man tatsächlich die IP 192.168.0.3 hat.


Der MITM kontrolliert einen der Router, der auf dem Weg liegt.

OrallY 12. Apr 2004 17:50

Re: Man-In-The-Middle
 
Zitat:

Zitat von Chewie
Der MITM kontrolliert einen der Router, der auf dem Weg liegt.

Das heißt, der Router müsste gehackt werden? Klingt einleuchtend!

Zitat:

Zitat von Robert_G
Ich habe da ehrlich gesagt wenig Ahnung von...
Aber wäre es nicht möglich das ganze irgendwie über eine lokale DNS-Auflösung zu basteln.
Könnte man nicht 192.168.0.1 die Info schicken, dass hinter der URL 192.168.0.2 die IP 192.168.0.3 steckt?

Dazu müsste ja der DNS Server gehackt werden.

Meflin 12. Apr 2004 18:08

Re: Man-In-The-Middle
 
also ich hab jetzt nicht alles gelesen und weis nicht ob das jetzt das problem ist, aber die ip zu faken - und zwar richtig zu faken - ist kein problem. mehr oder weniger gute tools dazu findest du wie sand am meer!

OrallY 12. Apr 2004 18:48

Re: Man-In-The-Middle
 
Wenn man ein Packet verschickt in diesem Packet die IP zu fälschen ist leicht, ohne Frage. Viel mehr hat mich interessiert, wie man ein Packet einem Empfänger vor der Nase wegschnappen kann. Chewie meint, dazu müsste man sich in den Datenverkehr beispielsweise bei einem Router einklinken, was wiederrum nicht einfach sein dürfte.

Und ich brauch ja keine Tools, die das für mich machen, viel mehr brauch ich Hintergrundwissen, wie ich selbst das machen könnte.

Meflin 12. Apr 2004 18:56

Re: Man-In-The-Middle
 
ichglaube etheral ist opensource! google mal danach. das ist ein packet sniffer. wenn du die packets auslesen kannst dürfts auch nicht mehr weit sein, sie zu manipulieren!

negaH 13. Apr 2004 07:35

Re: Man-In-The-Middle
 
Bei einem MITMA ist es immer so das A und B eigentlich blind sind, d.h. sie haben keienrlei Informationen über welchen Weg sie miteinander kommunizieren. Aus dieser Sicht heraus wird klar das die IP Adressen irrelevant sind. In einer IP based Kommunikation übers WEB sitzen im Übertragungsweg sehr viele verschiedene Router. Laut IP ist es zwischen den Servern/Provideren/Backbones üblich das deren Clients garnicht die tatsächlichen Server IP's zu sehen bekommen. D.h. für die Clienten stehen in den IP Packets die IP's des anderen Clients und nicht die der zwischengeschalteten Server. Somit kann man ohne Probleme heutzutage mit dem entspechendem Geld und Macht sich in die Kommunikation zwischenschalten OHNE das man entdeckt wird. Zusätzlich wird in Deutschland über die Verordnungen des "großen Lauschangriffes" geregelt das der Nachrichtendienst jeden Server eines beliebigen Providers hijacken kann. Dh. selbst wenn man einem Provider vertraut können andere Institutionen trotzdem lauschen.

So gesehen ist es technisch und auch methologisch irrelevant sich an die IP's oder dem Übertragungsprotokoll zu klammern. Man muß immer davon ausgehen das JEDER zur JEDER Zeit die Kommunikation zwischen zwei Clients belauschen kann. So als würde man stille Post spielen, aber indem man die nachricht brüllt.

Dies sind nun auch die Gründe warum man per Kryptographie die Möglichkeiten schafft Nachrichten irgendwie zu verschlüsseln.

Auf Grund der Logik kann es aber kein Schlüsselaustausch geben der ohne gemeinsammes Geheimniss zwischen Client A und B sicher zu bekommen ist. D.h. die Clienten müssen sich sicher sein das am anderen Ende ein für sie authentifizierter Client sitzt, sozusagen muß Client B seinen Personalwausweis Client A zeigen, aber eben elektronisch. Wobei wir beim Stichwort Personalausweis schon wieder bei den Trustcentern angekommen sind. Denn diese sollen exakt die notwendige Authentifizierung "in advance" erledigen. Allerdings, wie ersichtlich, erlangen die Trustcenter damit uneingeschänkte Macht, den die Trust sind es die das Vertrauen brechen können.



Gruß hagen

morbo 14. Apr 2004 19:24

Re: Man-In-The-Middle
 
Zitat:

Zitat von OrallY
Wenn man ein Packet verschickt in diesem Packet die IP zu fälschen ist leicht, ohne Frage. Viel mehr hat mich interessiert, wie man ein Packet einem Empfänger vor der Nase wegschnappen kann. Chewie meint, dazu müsste man sich in den Datenverkehr beispielsweise bei einem Router einklinken, was wiederrum nicht einfach sein dürfte.

Und ich brauch ja keine Tools, die das für mich machen, viel mehr brauch ich Hintergrundwissen, wie ich selbst das machen könnte.

Hi,
wie wäre es mit einer Packet Umleitung. IP Adressen werden durch das Arp Protokoll mit der Mac Adresse verbunden. Letztlich musst Du es nur schaffen mehr gefälschte Arp Packete zu senden als der Richtige Rechner (Arp Poisening) und schon landen die Packete bei dir. Danach kannst du auf Sie antworten.

Gruß

OrallY 16. Apr 2004 14:47

Re: Man-In-The-Middle
 
Hmm, hört sich interessant an. Werd dem mal nachgehen. thx


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:42 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz