WebGoat es una aplicación web J2EE deliberadamente insegura, mantenida por OWASP y diseñada para enseñar lecciones de seguridad en aplicaciones Web. En cada lección, los usuarios deben demostrar su entendimiento de los problemas de seguridad al explotar la vulnerabilidad real en al aplicación WebGoat. Por ejemplo, en una de las lecciones el usuario debe usar SQL injection para robar números de tarjeta de crédito ficticios. La aplicacion es un ambiente realista de enseñanza, que provee a los usuarios con pistas y código para explicar mejor la lección.
Metas
La seguridad en aplicaciones web es difícil de aprender y practicar. No mucha gente tiene applicaciones Web completas como tiendas electrónicas de libros o bancos en línea que pueden ser usados para buscar vulnerabilidades. Además, los profesionales de seguridad frecuentemente necesitan probar herramientas contra una plataforma conocida por ser vulnerable para asegurarse que se desempeñan segun se anuncian. Todo esto necesita debe ocurrir en un ambiente seguro y legal. Incluso si sus intenciones son buenas, creemos que no debe intentar buscar vulnerabilidades sin permiso.
La meta principal del proyecto WebGoat es simple: Crear un ambiente interactivo de enseñanza para seguridad en aplicaciones web. En el futuro, el equipo del proyecto espera extender WebGoat para convertirse en una plataforma para "benchmarking" de seguridad y un "Honeypot" para sitios web badado en Java.
Dele un vistazo a el plan de trabajo del proyecto y encuentre algunas tareas que le pueden ayudar de inmediato.
Más información..............[Enlace externo eliminado para invitados]
Descarga......................[Enlace externo eliminado para invitados]
Todas las lecciones (unas 40) te dan la opcion de si te atascas poder descargar un video demostrativo de esa leccion en particular.
Aqui dejo las lecciones practicas que trae:
The lesson plans included WebGoat 5.0 (1/31/07) include:
General HTTP Basics
HTTP Splitting and Cache Poisining
How to Exploit Thread Safety Problems
How to add a new WebGoat lesson
Code Quality How to Discover Clues in the HTML
Unvalidated Parameters How to Exploit Hidden Fields
How to Exploit Unchecked Email
How to Bypass Client Side JavaScript Validation
Broken Access Control Using an Access Control Matrix
How to Bypass a Path Based Access Control Scheme
How to Perform Cross Site Request Forgery (CSRF)
LAB: Role based Access Control
Remote Admin Access
Broken Authentication Forgot Password
How to Spoof an Authentication Cookie
How to Hijack a Session
Basic Authentication
Cross Site Scripting (Xss) LAB: Cross Site Scripting
How to Perform Stored Cross Site Scripting (XSS)
How to Perform Reflected Cross Site Scripting (XSS)
HTTPOnly Test
How to Perform Cross Site Tracing (XST) Attacks
Buffer Overflows Buffer Overflow
Injection Flaws How to Perform Command Injection
How to Perform Blind SQL Injection
How to Perform Numeric SQL Injection
How to Perform Log Spoofing
How to Perform XPATH Injection
How to Perform String SQL Injection
LAB: SQL Injection
How to Use Database Backdoors
Improper Error Handling How to Bypass a Fail Open Authentication Scheme
Insecure Storage Encoding Basics
Denial of Service Denial of Service From Multiple Logins
Insecure Configuration Management Forced Browsing
Web Services How to Create a SOAP Request
WSDL Scanning
Web Service SAX Injection
Web Service SQL Injection
AJAX Security DOM Injection
XML Injection
JSON Injection
Silent Transactions Attacks
Saludos