Index

0. Introducción

1. Mapeo de la Aplicación

  1. Explorar contenido visible. Burp
  2. Consultar recursos públicos
  3. Descubrir contenido oculto
  4. Descubrir contenido por defecto. Nikto, Dirb
  5. Enumerar funciones con identificador
  6. Testeo de parámetros de debug

2. Análisis de la Aplicación

  1. Identificar funcionalidad
  2. Identificar tecnologías usadas. SSL
  3. Probar la transmisión de datos vía cliente
  4. Mapear la superficie de ataque. Nmap

3. Probar extensiones del navegador (APPLET) / Apps móviles.

  1. Decompilar el cliente
  2. Debuggear
  3. Probar controles ActiveX
  4. Apps móviles. Android y Iphone.

4. Tests de Autenticación

  1. Probar la calidad de las contraseñas
  2. Probar la enumeración de usuarios
  3. Probar fuerza bruta
  4. Probar segundo factor de autenticación
  5. Probar funciones de recuperar cuenta
  6. Probar funciones "Recuerdame"
  7. Probar cuan predecibles son las credenciales autogeneradas
  8. Comprobar transmisiones de credenciales inseguras
  9. Probar hashes
  10. Probar fallos lógicos
    1. Probar condiciones Fail-Open
    2. Probar mecanismos multipaso

5. Tests de Manejo de Sesión

  1. Entender el mecanismo
  2. Probar el significado de los tokens
  3. Probar la predicibilidad de los tokens
  4. Probar la transmisión de tokens insegura
  5. Probar revelación de tokens en logs
  6. Comprobar el mapeo de tokens a sesiones
  7. Probar el fin de sesión
  8. Probar la sesion fixation
  9. Probar CSRF

6. Tests de Control de Acceso

  1. Entender los requerimientos de control de acceso
  2. Probar con múltiples cuentas
  3. Probar el acceso limitado
  4. Pruebas para métodos de acceso inseguros

7. Tests de vulnerabilidades basadas en input

  1. Hacer fuzzing a todos los parámetros de peticiones
  2. Probar inyecciones SQL
  3. Probar inyecciones XSS y otros tipos
    1. Identificar XSS reflejados
    2. Probar inyección de cabecera HTTP
    3. Probar redirecciones abiertas
    4. Probar ataques almacenados
  4. Probar inyección de comandos
  5. Probar Path Traversal
  6. Probar inclusión de archivos

8. Tests pde Funcionalidad Específica

  1. Probar inyección SMTP
  2. Probar vulnerabilidades de software nativo
    1. Probar buffer overflow
    2. Probar vulnerabilidades de enteros
    3. Probar vulnerabilidades del formato de los strings
  3. Probar inyección SOAP
  4. Probar inyección LDAP
  5. Probar inyección XPath
  6. Probar inyección XXE

9. Tests de Fallos Lógicos

  1. Identificar la superficie de ataque clave
  2. Probar manejo de input incompleto
  3. Probar límites de confianza

10. Tests de Problemas de Hosting Compartido

  1. Probar segregación en infraestructuras compartidas
  2. Probar segregación entre aplicaciones ASP-Hosted

11. Tests del Servidor Web

  1. Probar credenciales por defecto
  2. Probar contenido por defecto
  3. Probar métodos HTTP peligrosos y cabeceras
  4. Probar funcionalidad proxy
  5. Probar configuración errónea del hosting virtual
  6. Probar bugs del software del servidor web

12. Comprobaciones Miscelánea

  1. Comprobar ataques basados en DOM
  2. Comprobar vulnerabilidades locales de privacidad
  3. Probar politica de configuración Same-Origin

13. Fugas de Información

  1. Metadatos

Identificar XSS reflejados

En cada parámetro, prueba a escribir valores y comprueba si en la respuesta aparecen esos valores.
>>> Por ejemplo, si el dominio tiene un panel para hacer búsquedas y al poner “asdagdsfa” la respuesta es “No existen resultados para asdagdsfa' ", es posible que puedas realizar un XSS


Prueba a introducir <script>alert(1)</script>
>>> Puede que tenga filtros que saniticen los valores, quitando cadenas peligrosas como <string>. Pero aun así sigue probando con otras formas, como <a onclick=alert(1)>click me!</a>.
>>> Si lo que hace es filtrar el alert(1), prueba con otros métodos como confirm(1) o prompt(1).

Si notas cualquier cambio en el código fuente o en la web, es casi seguro que puedes realizar el XSS, pero tendrás que ir modificándolo.
>>> Para ello comprueba dónde se está escribiendo, y ve añadiendo lo que necesites para que quede bien formado. Quizá necesites cerrar otras etiquetas o funciones (añadiendo al principio >, ) o } ).

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Notas:
Puedes encontrar un cheat sheet de formas de evadir filtros anti XSS en el siguiente enlace:
https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet