9.6 KiB
Metodología de Vulnerabilidades Web
Aprende hacking en AWS desde cero hasta experto con htARTE (Experto en Red Team de AWS de HackTricks)!
Otras formas de apoyar a HackTricks:
- Si deseas ver tu empresa anunciada en HackTricks o descargar HackTricks en PDF ¡Consulta los PLANES DE SUSCRIPCIÓN!
- Obtén la merchandising oficial de PEASS & HackTricks
- Descubre La Familia PEASS, nuestra colección exclusiva de NFTs
- Únete al 💬 grupo de Discord o al grupo de telegram o síguenos en Twitter 🐦 @carlospolopm.
- Comparte tus trucos de hacking enviando PRs a los repositorios de HackTricks y HackTricks Cloud.
En cada Pentest Web, hay varios lugares ocultos y obvios que podrían ser vulnerables. Esta publicación pretende ser una lista de verificación para confirmar que has buscado vulnerabilidades en todos los lugares posibles.
Proxies
{% hint style="info" %} Hoy en día, las aplicaciones web suelen utilizar algún tipo de proxies intermedios, los cuales pueden ser (ab)usados para explotar vulnerabilidades. Estas vulnerabilidades necesitan un proxy vulnerable para estar en su lugar, pero generalmente también necesitan alguna vulnerabilidad adicional en el backend. {% endhint %}
- Abuso de cabeceras hop-by-hop
- Envenenamiento de Caché/Engaño de Caché
- Contrabando de Peticiones HTTP
- Contrabando H2C
- Inclusión en el Lado del Servidor/Inclusión en el Lado del Borde
- Descubriendo Cloudflare
- Inyección de Lado del Servidor XSLT
- Bypass de Protecciones de Proxy / WAF
Entrada de Usuario
{% hint style="info" %}
La mayoría de las aplicaciones web permitirán a los usuarios introducir algunos datos que serán procesados posteriormente.
Dependiendo de la estructura de los datos que el servidor espera, algunas vulnerabilidades pueden aplicarse o no.
{% endhint %}
Valores Reflejados
Si los datos introducidos de alguna manera pueden reflejarse en la respuesta, la página podría ser vulnerable a varios problemas.
- Inyección de Plantillas en el Lado del Cliente
- Inyección de Comandos
- CRLF
- Marcado Colgante
- Inclusión de Archivos/Travesía de Rutas
- Redirección Abierta
- Contaminación de Prototipos a XSS
- Inclusión en el Lado del Servidor/Inclusión en el Lado del Borde
- Falsificación de Peticiones en el Lado del Servidor
- Inyección de Plantillas en el Lado del Servidor
- Robo de Pestañas Reverso
- Inyección de Lado del Servidor XSLT
- XSS
- XSSI
- XS-Search
Algunas de las vulnerabilidades mencionadas requieren condiciones especiales, otras solo requieren que el contenido se refleje. Puedes encontrar algunos políglotas interesantes para probar rápidamente las vulnerabilidades en:
{% content-ref url="../pocs-and-polygloths-cheatsheet/" %} pocs-and-polygloths-cheatsheet {% endcontent-ref %}
Funcionalidades de Búsqueda
Si la funcionalidad se puede utilizar para buscar algún tipo de datos dentro del backend, tal vez puedas (ab)usarla para buscar datos arbitrarios.
- Inclusión de Archivos/Travesía de Rutas
- Inyección NoSQL
- Inyección LDAP
- ReDoS
- Inyección SQL
- Inyección XPATH
Formularios, WebSockets y PostMsgs
Cuando un websocket envía un mensaje o un formulario permite a los usuarios realizar acciones, pueden surgir vulnerabilidades.
- Falsificación de Peticiones entre Sitios
- Secuestro de WebSockets entre Sitios (CSWSH)
- Vulnerabilidades de PostMessage
Cabeceras HTTP
Dependiendo de las cabeceras HTTP proporcionadas por el servidor web, algunas vulnerabilidades podrían estar presentes.
- Clickjacking
- Bypass de Política de Seguridad de Contenido
- Hackeo de Cookies
- CORS - Configuraciones Incorrectas y Bypass
Bypasses
Existen varias funcionalidades específicas donde algunos trucos podrían ser útiles para evadirlos.
- Bypass de 2FA/OTP
- Bypass de Proceso de Pago
- Bypass de Captcha
- Bypass de Inicio de Sesión
- Condición de Carrera
- Bypass de Límite de Tasa
- Bypass de Restablecimiento de Contraseña Olvidada
- Vulnerabilidades de Registro
Objetos Estructurados / Funcionalidades Específicas
Algunas funcionalidades requerirán que los datos estén estructurados en un formato muy específico (como un objeto serializado de lenguaje o XML). Por lo tanto, es más fácil identificar si la aplicación podría ser vulnerable, ya que necesita procesar ese tipo de datos.
Algunas funcionalidades específicas también pueden ser vulnerables si se utiliza un formato específico de entrada (como Inyecciones de Cabecera de Correo Electrónico).
- Deserialización
- Inyección de Cabecera de Correo Electrónico
- Vulnerabilidades de JWT
- Entidad Externa XML
Archivos
Las funcionalidades que permiten cargar archivos podrían ser vulnerables a varios problemas.
Las funcionalidades que generan archivos incluyendo la entrada del usuario podrían ejecutar código inesperado.
Los usuarios que abren archivos cargados por usuarios o generados automáticamente incluyendo la entrada del usuario podrían ser comprometidos.
Gestión de Identidad Externa
Otras Vulnerabilidades Útiles
Estas vulnerabilidades podrían ayudar a explotar otras vulnerabilidades.
- Toma de Control de Dominio/Subdominio
- IDOR
- Contaminación de Parámetros
- Vulnerabilidad de Normalización Unicode
Aprende hacking en AWS desde cero hasta experto con htARTE (Experto en Red Team de AWS de HackTricks)!
Otras formas de apoyar a HackTricks:
- Si deseas ver tu empresa anunciada en HackTricks o descargar HackTricks en PDF ¡Consulta los PLANES DE SUSCRIPCIÓN!
- Obtén la merchandising oficial de PEASS & HackTricks
- Descubre La Familia PEASS, nuestra colección exclusiva de NFTs
- Únete al 💬 grupo de Discord o al grupo de telegram o síguenos en Twitter 🐦 @carlospolopm.
- Comparte tus trucos de hacking enviando PRs a los repositorios de HackTricks y HackTricks Cloud.