Saltar al contenido
Técnicas Fundamentales
Índice de contenidos

Netcat (nc)

Netcat es una herramienta muy utilizada durante auditorías de seguridad para establecer conexiones TCP/UDP, escuchar en puertos, transferir archivos y verificar la conectividad entre dos equipos.


Listener

Abrir un puerto en escucha para recibir una conexión entrante.

nc -nlvp 443

Parámetros:

ParámetroDescripción
-nNo realiza resolución DNS.
-lModo escucha (Listen).
-vSalida detallada (Verbose).
-pPuerto donde escuchar.

Comprobar conectividad

Verificar si un puerto está abierto:

nc -nv <IP> <PUERTO>

Ejemplo:

nc -nv 192.168.1.10 80

Transferencia de archivos

Enviar un archivo

Máquina receptora:

nc -nlvp 4444 > archivo.txt

Máquina emisora:

nc <IP> 4444 < archivo.txt

Estabilizar una TTY (Linux)

Si se obtiene una shell limitada, puede mejorarse con:

python3 -c 'import pty; pty.spawn("/bin/bash")'

Después:

CTRL + Z

Y en la máquina atacante:

stty raw -echo; fg

Finalmente:

export TERM=xterm

Reverse Shell Generator

Una forma cómoda de generar comandos adaptados al sistema operativo y lenguaje disponible es utilizar:

https://www.revshells.com/

Permite generar comandos para:

  • Bash
  • PowerShell
  • PHP
  • Python
  • Perl
  • Java
  • Netcat
  • Socat
  • Ruby
  • Awk
  • Tcl
  • Groovy
  • Y muchos más.

Herramientas relacionadas

HerramientaDescripción
nc (Netcat)Conexiones TCP/UDP, listeners y transferencia de archivos.
ncatImplementación de Netcat incluida con Nmap.
socatAlternativa más potente para redirección de conexiones y shells.
python3Útil para estabilizar una TTY interactiva.

Consejo: El puerto 443 suele utilizarse con frecuencia durante laboratorios porque normalmente está permitido por los firewalls. No obstante, puedes utilizar cualquier puerto que esté permitido entre la máquina atacante y el objetivo.