Para empezarCada vez que abres una página web, lanzas un ataque invisible de peticiones que el servidor procesa a ciegas. Si no sabes cómo viajan esos datos, estás hackeando a ciegas.
El modelo Cliente-Servidor
El modelo cliente-servidor es la arquitectura fundamental de la web. El cliente, normalmente tu navegador, solicita un recurso mediante una petición, y el servidor remoto procesa esa solicitud y devuelve una respuesta con los datos o la página web solicitada.
Anatomía de una transacción HTTP
Toda comunicación web sigue un ciclo estrictamente secuencial y síncrono que debes dominar para entender cualquier vulnerabilidad posterior.
Marca cada paso al entenderlo · 0/4
El pecado original de HTTP
HTTP es un protocolo puramente stateless (sin estado) y en texto plano por defecto. Esto significa que cada petición es independiente y que cualquier intermediario en la red puede leer, modificar o secuestrar el tráfico si no se emplean capas de cifrado adicionales como TLS.
Inspeccionando HTTP en crudo
Podemos interactuar directamente con un servidor web utilizando Netcat o cURL para ver la respuesta exacta sin filtros de navegador ni abstracciones visuales.
$ curl -i http://example.com
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Content-Length: 1256
Server: ECS (sec/969A)
Confiar en el cliente es un fallo crítico
Un error imperdonable al desarrollar aplicaciones web es asumir que el cliente siempre enviará datos válidos. Como pentester, recuerda que todo lo que llega desde el cliente puede ser manipulado antes de tocar el servidor, desde formularios hasta cookies.
Métodos y Códigos de Estado
Los verbos HTTP como GET, POST, PUT o DELETE indican la acción deseada, mientras que los códigos de estado numéricos (como el 200 OK, 403 Forbidden o 500 Server Error) informan al cliente sobre el resultado exacto de su petición.
¿Te acuerdas? Toca para comprobarlo
Atajos: ← → para cambiar de pieza · / para buscar
