Hosterkennung mit Nmap
Zunächst musst du überprüfen, ob der LUPFER erreichbar ist. Dies geschieht über die sogenannte Host-Erkennung.
Ein Host ist ein Endgerät in einem Netzwerk, das über eine eindeutige IP-Adresse verfügt und über Netzwerkprotokolle wie TCP/IP kommunizieren kann.
Bei der Host-Erkennung kennst du die IP-Adresse des Untersuchungsobjekts nicht unbedingt. Dann muss der gesamte IP-Adressbereich des privaten Netzwerks überprüft werden. Das machst du mit Nmap mit dem Befehl
nmap -sn <Adressraum>
Das Flag -sn sorgt dabei dafür, dass kein Portscan ausgeführt wird, sondern tatsächlich nur ein Hostscan.
Du solltest festgestellt haben, dass sich die fünf Komponenten in dem Netzwerk befinden. Drei davon sind wichtig für dich:
172.19.0.2ist der LUPFER, den du untersuchen sollst.172.19.0.3ist das Backend. Dies wäre in der Realität ein Server des Herstellers und gehörte zu einem anderen lokalen Netzwerk. Das Backend vom Hersteller darfst du auf keinen Fall testen. Hier ist es nur mit in dem Netzwerk, damit jedes Gerät sein eigenes Backend hat.172.19.0.4ist der Pentestleitfaden selbst, auf dem du Nmap ausführst.
Die anderen beiden Komponenten sind dem Online-Hosting geschuldet und können daher vernachlässigt werden.
Aus der Ausgabe von Nmap kannst du nicht ableiten, welches Gerät sich hinter welcher IP-Adresse verbirgt. Wenn du dein eigenes IoT-Gerät untersuchst, kann es sein, dass es seine eindeutige Bezeichnung preisgibt. Ansonsten findest du die IP-Adresse deines Geräts über die Benutzeroberfläche deines Routers heraus.
Mit Nmap kannst du die Hosterkennung konfigurieren.
Wie funktioniert die Hosterkennung?
Hosterkennung mit dem ARP-Protokoll
Wie funktioniert nun die Host-Erkennung? Dafür können verschiedene Protokolle des Internetmodells genutzt werden. In einem lokalen Netzwerk ist es möglich, das Address Resolution Protocol (ARP) zu nutzen.
Das Address Resoultion Protocol (ARP) ermittelt die physische MAC-Adresse zu einer gegebenen IP-Adresse in einem lokalen Netzwerk. Es wird im Zusammenhang mit der vierten Version des Internet Protocols (IPv4) verwendet.
Es gehört zur Netzzugangsschicht und ermöglicht, aktive Hosts in einem lokalen Netzwerk zu ermitteln. Der Ablauf ist:
- Der Absender sendet eine sogenannte ARP-Anfrage an alle Geräte. Das Zielgerät wird über die IP-Adresse identifiziert.
- Das Gerät mit der angefragten IP-Adresse antwortet und teilt dem Absender seine MAC-Adresse mit.
Hosterkennung über ICMP
Alternativ kann auch das Internet Control Message Protocol (ICMP) genutzt werden.
Das Internet Control Message Protocol (ICMP) ist ein Netzwerkprotokoll, das zur Übertragung von Fehlernachrichten und zur Durchführung von Diagnosen in IP-Netzwerken wie das Internet eingesetzt wird.
Es gehört zur Internetschicht und ermöglicht, aktive Hosts zu ermitteln, die sich im gleichen Netzwerk befinden oder über das Internet erreichbar sind. Wenn sich der Zielhost im gleichen Netzwerk wie der Absender befindet, ist der Ablauf wie folgt:
- Der Absender sendet eine sogenannte ICMP Echo Request an die IP-Adresse des Zielhosts.
- Der Router erhält die Anfrage, erkennt, dass sich die IP-Adresse im eigenen Netzwerk befindet und leitet sie an den Zielhost weiter.
- Ist der Zielhost aktiv, antwortet mit einer sogenannten ICMP Echo Reply. Ist der Zielhost dagegen nicht erreichbar, antwortet er nicht.
Befindet sich der Zielhost in einem anderen Netzwerk, das über das Internet erreichbar ist, erfolgt die Hosterkennung wie folgt:
- Der Absender sendet eine sogenannte ICMP Echo Request an die IP-Adresse des Zielhosts.
- Der Router erhält die Anfrage, erkennt, dass er die Anfrage nicht direkt an den Zielhost senden kann und leitet sie an den nächsten Router weiter. Dafür ändert er die IP-Adresse des Absenders in seine öffentliche IP-Adresse.
- Die Anfrage erreicht den Router des Zielnetzes, der sie an den Zielhost weiterleitet.
- Ist der Zielhost aktiv, antwortet er mit einer sogenannten ICMP Echo Reply. Ist der Zielhost dagegen nicht erreichbar, sendet der Router eine ICMP-Fehlernachricht an den Absender.
