¿Sabes qué es Netcat y por qué se utiliza esta herramienta en ciberseguridad?
En este post, hablaremos sobre una herramienta de pentesting que se puede utilizar para estudiar conexiones HTTP. A continuación, te explicaremos qué es Netcat y por qué se usa este programa en auditorías de ciberseguridad.
Un poco de contexto
El pentesting de aplicaciones web es una de las ramas más populares del hacking ético. Consiste en replicar técnicas de ciberataque reales con el fin de poner a prueba la seguridad de una aplicación. Para ello, es necesario conocer cómo funcionan los principales protocolos de navegación web y cuáles son sus vulnerabilidades informáticas.
Para llevar a cabo tests de penetración en aplicaciones web no es necesario tener los mismos conocimientos que un desarrollador (aunque sí sería de gran utilidad). Finalmente, los expertos en ciberseguridad no pueden especializarse en todas las tecnologías que deben auditar. Sin embargo, para hacer auditorías web (que son altamente comunes) es necesario tener conocimientos básicos sobre protocolos de navegación HTTP y HTTPS.
El protocolo HTTP es un sistema con una estructura de servidor-cliente. El cliente envía peticiones con cada acción que genera dentro la aplicación. Del mismo modo, el servidor envía respuestas al cliente, que contienen los datos que la página web le devuelve al usuario. La única diferencia que existe entre HTTP y HTTPS es que en HTTPS la comunicación entre el servidor y el cliente está completamente cifrada.
¿Qué es Netcat?
Netcat es un programa que encontrarás preinstalado en los sistemas operativos para hacking ético, como Kali Linux. Netcat es una herramienta de la línea de comandos (es decir, no cuenta con interfaz gráfica y solo se puede ejecutar desde consola) que se utiliza para restablecer conexiones de tipo TCP y UDP. Además, permite hacer escaneo de puertos, direcciones IP y ver qué servicios se encuentran activos. Asimismo, permite establecer conexiones con servidores (por ejemplo, al puerto 80 de una máquina).
Funciones de Netcat
Para activar la herramienta en Kali Linux y aprender de primera mano qué es Netcat, abre un terminal en cualquier directorio del sistema. Para verificar que el programa esté instalado, usa el comando:
which nc
🔴 ¿Quieres entrar de lleno a la Ciberseguridad? 🔴
Descubre el Ciberseguridad Full Stack Bootcamp de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada
👉 Prueba gratis el Bootcamp en Ciberseguridad por una semanaSi la ruta donde se encuentra el programa instalado aparece en pantalla, significa que está listo para ejecutarse. Para ver la lista de comandos de Netcat y conocer sus funciones, ejecuta el comando:
nc -h
Ese comando mostrará todas las funciones de Netcat. Algunas de ellas incluyen avisos de peligro, pues permiten ejecutar tareas maliciosas en un sistema. Recuerda que el propósito de enseñar estas herramientas es estrictamente educativo, por lo que su uso debe aplicarse únicamente con fines éticos.
Dentro de las funciones de Netcat encontrarás:
- Shell commands: permite ejecutar comandos dentro de la aplicación web vulnerada.
- Filename: permite ejecutar archivos dentro de la aplicación web vulnerada.
- Listen: permite poner a escuchar puertos en un ordenador para ejecutar payloads o chats en servidores.
Otras herramientas de pentesting web
Ya hemos visto qué es Netcat y algunas de sus funciones. Netcat permite conectarse con un servidor HTTP sin necesidad de hacerlo por medio de un navegador. De hecho, permite ver la comunicación con el servidor en RAW, es decir, en su lenguaje HTML. Sin embargo, a continuación, veremos otras herramientas para analizar o, incluso, influir en la comunicación con un servidor HTTP.
Wireshark
Wireshark es un software para analizar el tráfico de red de un ordenador. Con este programa, es posible capturar paquetes de datos de diferentes protocolos. Entre ellos, el protocolo HTTP. Dado que este protocolo de navegación web no está cifrado, Wireshark permite ver cada una de las peticiones del cliente y respuestas del servidor, lo cual le da la capacidad de analizar ciertas vulnerabilidades.
Wireshark también se utiliza mucho en el mundo académico del desarrollo de aplicaciones web.
BurpSuite
BurpSuite es una plataforma que junta herramientas para el pentesting de aplicaciones web. Su herramienta más conocida permite crear proxies HTTP. Estos proxies permiten controlar detalladamente el tráfico entre un cliente y un servidor. BurpSuite permite interceptar, modificar, aceptar o rechazar cada petición y respuesta. Por medio de esta herramienta, se pueden ejecutar ataques de intermediario en tests de penetración.
¿Cómo aprender más?
Ya has aprendido qué es Netcat y cómo se utiliza en ciberseguridad. Si quieres saber más sobre cómo usar esta herramienta, no te pierdas el programa de nuestro Ciberseguridad Full Stack Bootcamp, la formación intensiva en la que podrás convertirte en un experto en tan solo 7 meses. ¿A qué estás esperando para cambiar tu vida? ¡Entra y pide más información!