Gibt es eine Möglichkeit, einen Befehl auszuführen (z. B. eine ICMP-Nachricht oder ein anderes Protokoll), eine Antwort von einem Remotecomputer (nicht in meinem eigenen lokalen lokalen Netzwerk) zu erhalten und die Nachricht zu analysieren, um Hinweise darauf zu finden, dass auf diesem Computer Windows oder ausgeführt wird ein Linux-Betriebssystem?
windows
linux
networking
protocol
Diogo
quelle
quelle
Antworten:
Es ist nicht endgültig, aber nmap erledigt dies mit dem Befehl
nmap -O -v
( weitere Informationen finden Sie in den Dokumenten ). Wenn Sie Windows ausführen oder eine GUI möchten, schauen Sie sich zenmap anquelle
Wenn Sie sich in einem IPv4-Netzwerk befinden, verwenden Sie einfach Ping. Wenn die Antwort eine TTL von 128 hat, wird auf dem Ziel wahrscheinlich Windows ausgeführt. Wenn die TTL 64 ist, führt das Ziel wahrscheinlich eine Unix-Variante aus.
quelle
quelle
Ein Weg ist die Verwendung von NMap . Aus der Antwort kann das Remote-Betriebssystem erraten werden.
quelle
Paket: xprobe 'OR' xprobe2
Beschreibung: Remote-Betriebssystemidentifikation Mit Xprobe2 können Sie bestimmen, welches Betriebssystem auf einem Remote-Host ausgeführt wird. Es sendet mehrere Pakete an einen Host und analysiert die zurückgegebenen Antworten. Die Funktionalität von Xprobe2 ist vergleichbar mit der Fingerabdruckfunktion des Betriebssystems in nmap.
Beispiel:
$ sudo apt-get install xprobe
$ sudo xprobe2 -T21-23,80,53,110 ###. ###. ###. ###
Referenz:
http://www.sys-security.com/html/projects/X.html
http://sourceforge.net/projects/xprobe/
quelle
Alter Beitrag, aber ich dachte, ich würde ihn auch ergänzen. Wenn das Gerät SNMP-fähig ist, können Sie auch nach sysDescr fragen, das Ihnen das verwendete Betriebssystem mitteilt.
Laden Sie einen guten MIB-Browser herunter, den ich hier verwende: http://www.ireasoning.com/downloadmibbrowserfree.php . Sie geben ihm im Grunde die IP-Adresse des Geräts und führen einen Walk-Vorgang durch.
quelle
Nach dem Vorschlag von Johnathon64 können Sie SNMP verwenden, um direkt auf dem Server abzufragen - vorausgesetzt, der Remote-Server selbst ist für die Verwendung von SNMP konfiguriert. Sie können eine Befehlszeilenabfrage wie die folgende starten, um dies zu tun:
Den Befehl selbst erklären:
snmpget
fragt das Objekt sysDescr ab, das den Standardnamen des Objekts enthält.sed
wird die Anfangsausgabe ausgeschlossen, die nur die abgefragte OID und den Anfang der Zeichenfolge enthält.tr
schließt doppelte Anführungszeichen aus, die normalerweise in der SNMP-Abfrage enthalten sind.Die letzten beiden Befehle dienen nur zum Formatieren der Ausgabe. Wenn Sie sie nicht benötigen, können Sie den ersten Befehl verwenden, um die gesamte Ausgabe zu extrahieren.
quelle