Windows ncat als Listener

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Netcat unter Windows als Listener verwenden

Überblick

  • Unter Windows existieren mehrere Netcat-Varianten. Für einen vollständig kompatiblen Listener wie unter Linux eignet sich ausschließlich Ncat aus dem Nmap-Projekt. Alte nc.exe-Versionen sind unzuverlässig und unterstützen häufig kein -e. PowerShell ist kein vollwertiger Ersatz.*

Installation von Ncat (empfohlen)

  • Download von https://nmap.org
  • Installation von Nmap (Ncat wird automatisch mitinstalliert)
  • Ncat liegt danach als ncat.exe im Nmap-Verzeichnis vor

Listener starten (entspricht Linux netcat)

  • ncat -lvp 4444

Verbindung zu einem Listener herstellen

  • ncat 192.168.1.10 4444

Reverse Shell Listener

  • ncat -lvp 4444 -e cmd.exe

Hinweise zu -e

  • Die Option -e wird von Ncat unterstützt und erlaubt das Ausführen von Programmen über die TCP-Verbindung (z. B. cmd.exe oder powershell.exe). Viele alte Windows-nc.exe-Varianten unterstützen diese Funktion nicht.*

Alte Windows-nc.exe Varianten

  • nc.exe -l -p 4444
Kann funktionieren, ist aber nicht zuverlässig. Viele Builds sind fehlerhaft oder werden von Antivirus blockiert.

PowerShell als Ersatz (nicht empfohlen)

$listener = New-Object System.Net.Sockets.TcpListener 4444
$listener.Start()
$client = $listener.AcceptTcpClient()
$stream = $client.GetStream()
Für Automatisierung geeignet, aber kein echter Ersatz für Netcat.

Empfehlung

  • Für produktive oder schulungsnahe Arbeit immer ncat.exe verwenden. Verhalten entspricht weitgehend dem Linux-Original netcat.