Netcat es una herramienta de red que permite, a través de intérprete de comandos y con una sintaxis sencilla, abrir puertos TCP/UDP en un host (quedando Netcat a la escucha), asociar una shell a un puerto en concreto (para conectarse, por ejemplo, a un intérprete de comandos (CMD) o al intérprete bash de Linux remotamente) y forzar conexiones UDP/TCP (útil por ejemplo para realizar rastreos de puertos o realizar transferencias de archivos bit a bit entre dos equipos).
Es decir, a través de Netcat podremos saber si un puerto está o no abierto dependiendo de su respuesta, conectarnos a él y poner puertos nuestros en escucha para que otros equipos realicen conexiones inversas.
Existe versión tanto para Linux (en Kali ya está instalado por defecto) como para Windows.