¿Sabes cuáles son las bases de hacking web que necesitarás para hacer pruebas de penetración en aplicaciones de este tipo? En este post, hablaremos sobre conceptos fundamentales para ejecutar tests de intrusión en aplicaciones web. Cabe aclarar que estos tests deben realizarse con la autorización del propietario del dominio o en entornos de práctica de pentesting web.
A continuación, explicaremos cuáles son las bases del hacking web.
El pentesting web
El pentesting web es una rama del hacking ético que se enfoca en hallar y explotar vulnerabilidades informáticas en aplicaciones web. Al igual que en el pentesting de sistemas, se replican las técnicas utilizadas por los ciberdelincuentes, con el fin de poner a prueba la seguridad de los sitios.
El pentesting de aplicaciones web es también un servicio altamente requerido, debido a que una enorme cantidad de compañías necesita una página web para ofrecer sus servicios. Dado el auge del uso de esta tecnología y también de la frecuencia con la que ocurren ciberataques, el hacking web es una labor de ciberseguridad con un gran campo de acción actualmente.
Para ejecutar tests de penetración en aplicaciones web, no es necesario ser un desarrollador experto en este tipo de softwares (aunque, de ser así, sería una enorme ventaja). No obstante, es necesario estar familiarizado con la tecnología que usan los sitios web y sus posibles vulnerabilidades.
Bases de hacking web
Para comenzar a aprender sobre bases de hacking web, es necesario empezar con los principales protocolos de navegación en internet: HTTP y HTTPS.
Protocolos HTTP y HTTPS
🔴 ¿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 semanaLas conexiones por medio del protocolo HTTP cada vez son más raras de ver (por motivos de ciberseguridad). Sin embargo, para pentesting web, es necesario entender cómo funciona este protocolo de navegación por internet y cuáles son sus vulnerabilidades.
HTTP (Hypertext Transfer Protocol) es un protocolo de comunicación entre clientes y servidores, con el fin de acceder a un sitio web y establecer una interacción con el mismo. El sistema HTTP funciona por medio de peticiones enviadas por el cliente y respuestas, que devuelve el servidor.
Una de las principales bases de hacking web es conocer la estructura de las peticiones y respuestas HTTP.
Peticiones
Todo tipo de acciones pueden realizarse por medio de una aplicación web, desde hacer compras en línea hasta escribir posts en un blog como este, pasando por diferentes juegos, foros y redes sociales. Son miles las actividades que pueden ser realizadas en internet.
Las peticiones son las acciones que intenta ejecutar un usuario en una aplicación web, como conectarse a ella, hacer clic en un botón, iniciar sesión, subir o descargar un archivo, etc. La estructura de una petición HTTP es la siguiente:
- Cabecera del mensaje de la petición:
- Línea de petición.
- Cabeceras de petición.
- Cuerpo del mensaje de la petición.
Respuestas
Ahora bien, las respuestas son aquellas acciones que devuelve el servidor del sitio web para el cliente. El resultado es lo que el cliente verá en la página después de enviar sus peticiones. La estructura de una respuesta es:
- Cabecera del mensaje de respuesta.
- Línea de estatus.
- Cabecera de respuesta.
- Cuerpo del mensaje de respuesta: este valor está escrito en lenguaje HTML y contiene los datos que le devuelve el servidor al cliente, después de que este haga una petición.
Herramientas de hacking web
Conocer los protocolos HTTP y HTTPS es una de las principales bases de hacking web. La diferencia entre estos dos es que el protocolo HTTPS cifra la comunicación entre el servidor y el cliente; mientras que el HTTP no. Por eso, ahora veremos algunas herramientas para analizar paquetes de datos HTTP o, incluso, interrumpirlos y modificarlos.
- Wireshark: es un analizador de todo el tráfico web de una máquina. Permite capturar paquetes de datos y analizarlos, para todo tipo de protocolos. También deja ver en detalle cada petición y respuesta. Cuando se establecen conexiones HTTP con páginas, Wireshark puede utilizarse para observar todo el tráfico en texto plano. Así, se pueden encontrar algunos fallos de seguridad.
- BurpSuite: es una plataforma que reúne herramientas para pentesting web. Dentro de ellas, una de las más utilizadas es su función de proxy HTTP. Esta tecnología permite interceptar e, incluso, modificar las peticiones de un cliente o las respuestas de un servidor.
- Netcat: es una herramienta que se utiliza para restablecer conexiones TCP o UDP. También permite hacer escaneo de puertos y realizar conexiones con servidores. De hecho, sirve para conectarse a puertos específicos y chatear.
¿Cómo aprender más?
Ya hemos visto algunas de las principales bases de hacking web. Si quieres aprender más y convertirte en un hacker ético profesional, en KeepCoding tenemos una formación íntegra de pocos meses ideal para ti. Échale un vistazo a nuestro Ciberseguridad Full Stack Bootcamp y especialízate con la guía de los mejores profesionales. ¡Pide información y atrévete a cambiar tu vida!