OWASP WebGoat & Webscarab
Fabio Cerullo
OWASP Irlanda
Comité Global de Educación
OWASP
19 July 2011
Copyright © The OWASP Foundation
Permission is granted to copy, distribute and/or modify this document
under the terms of the OWASP License.
The OWASP Foundation
http://www.owasp.org
Introducción a WebGoat
Proyecto OWASP con ~150,000 descargas
Aplicación web J2EE deliberadamente insegura
Diseñada para enseñar lecciones de seguridad
en aplicaciones Web
OWASP
2
Historia de WebGoat
Donado a OWASP por Aspect Security ~2002
El líder del proyecto es Bruce Mayhew
Comienza a recibir contribuciones ~2005
v5 producida como un proyecto AoC en 2006.
OWASP
3
WebGoat demuestra vulnerabilidades
Actualmente hay mas de 30 lecciones sobre:
En definitiva, todo el OWASP Top 10 2010!
OWASP
4
Dos versiones
Estandar:
La instalación standard es procedimiento de bajar,
descomprimir y dar clic.
Viene con el "Java Runtime Environment" y un
servidor Tomcat 5.5 ya configurado.
Desarrollador:
La versión de desarrollador tambien es es
procedimiento de bajar, descompriimr y dar click.
Trabaja exactamente de la misma manera que la
versión estándar por si quiere explorar las lecciones.
Dispone de un modo para desarrollo en Eclipse.
OWASP
5
Siendo reconocido internacionalmente…
Utilizado como herramienta de análisis de código
fuente y testeos de penetración
Utilizado por Universidades en la currícula de
seguridad web
Carnegie-Mellon, NYU, University of Denver, etc.
Estudiantes están ayudando a realizar lecciones!!
Utilizado por muchas compañías como
herramienta de entrenamiento
Mucha actividad en las lista de correo
OWASP
6
Novedades en la versión 5.X
5.0 – Autumn of Code 2006 Release
Muchas lecciones nuevas
 AJAX, JSON, HTTP response splitting, CSRF, cache poisoning,
log poisoning, XML & XPATH Injection, forced browsing
5.2 – versión actual
Introduction and WebGoat instructions
Multi Level Login Lesson
Session Fixation Lesson
Insecure Login Lesson
Lesson Solution Videos
Bug Report Feature
OWASP
7
Hoja de Ruta
Crear una base de datos común para todas las
lecciones
Convertir las lecciones a un tema común
Sistema HR (WebGoat Financials)
Online Banking o Video Store
Hacer WebGoat mas interactivo
No solo demostrar como atacar la aplicación
Convertir las lecciones a JSP para que sea mas
fácil la edición.
OWASP
8
Webscarab
Webscarab es un marco de trabajo para analizar
aplicaciónes web que se comunican usando los
protocolos HTTP y HTTPS.
 Funciona como un proxy de intercepción, que
permite al operador revisar y modificar las
peticiones creadas entre el navegador y el
servidor.
WebScarab es extendible. Cada característica es
implementada como un plugin y puede ser
removido o remplazado.
Proyecto liderado por Rogan Dawes.
OWASP
9
Plugins de Webscarab
 Fragmentos – permite extraer los scripts y comentarios de las
páginas HTML.
 Proxy - Observa el trafico entre el navegador y el servidor Web.
 Intercepción Manual - permite al usuario modificar peticiones y
respuestas HTTP y HTTPS "al vuelo”
 Beanshell - permite la ejecucion de operaciones arbitrarias
complejas (Java)
 Revelar campos ocultos - cambia todos los campos ocultos
encontrados en las páginas HTML a campos de texto, haciéndolos
visibles y editables.
OWASP
10
Plugins - continuación
 Simulador de ancho de banda - permite al usuario emular una
red mas lenta.
 Araña (Spider) - identifica nuevas URLs en el sitio objetivo y
obtiene el contenido cuando se le indica.
 Peticiones manuales - permite editar y reenviar peticiones
anteriores o la creación de peticiones nuevas completas.
 Análisis de identificadores de sesión - recolecta y analiza un
número de cookies (y eventualmente parametros en el URL
tambien) para determinar visualmente el grado de aleatoriedad y
predecibilidad.
OWASP
11
Plugins - continuación
 Ofuscador de parámetros - realiza la sustitución automatizada de
valores en los parametros. Util para demostrar una validación
incompleta de parámetros que lleve a vulnerabilidades como
Secuencia de comandos en sitios cruzados(XSS) o inyección de SQL.
 SOAP - hay un plugin que interpreta WSDL, y presenta las varias
funciones y los parámetros requeridas, permitiendo que sean
editadas antes de que sean enviadas a el servidor.
 Extensiones - automatiza las revisiones de archivos que fueron
dejados por error en el directorio raiz del servidor (e.g. .bak, ~, etc)
 XSS/CRLF - este plugin de análisis pasivo busca datos controlados
por el usuario en los encabezados y cuerpo de las respuestas HTTP
para identificar posibles inyecciones CRLF (partición de respuesta
HTTP) y vulnerabilidades de secuencia de comandos en sitios
cruzados (XSS).
OWASP
12
Webscarab – Tres versiones
 Lite: funcionalidad muy sencilla solo para interceptar/modificar
pedidos HTTP/HTTPS.
 Full: todas las opciones y plugins están habilitados (modo experto)
 NG (next generation): nueva versión en desarrollo mas intuitiva
para el usuario.
OWASP
13
WebGoat y Webscarab
Web
Browser
WebScarab
Port:8008
WebGoat
Port: 80
http://localhost/WebGoat/attack
OWASP
14
Demos – Veamos algunas lecciones!!
OWASP
15
Ejemplo 1
OWASP
16
Ejemplo 2
OWASP
17
Ejemplo 3
OWASP
18
Preguntas y respuestas
OWASP
Descargar

OWASP Plan