El mejor lugar para comenzar es el OWASP (Proyecto de seguridad de aplicaciones web abiertas). Tienen muchos recursos, incluido el OWASP Top Ten, que incluye las 10 vulnerabilidades/riesgos más críticos para las aplicaciones web y su Guía de desarrollo de código seguro que se puede leer en línea (wiki) o descargar en PDF.
También tienen la Web Goat, una aplicación web vulnerable que las personas pueden descargar y jugar para aprender sobre las vulnerabilidades, cómo funcionan y el mejor enfoque para corregirlas. Es bastante interesante y viene con consejos y soluciones.
También organizan conferencias (consulte la sesión de video del sitio web, generalmente publican los videos y diapositivas de las charlas) y los capítulos en diferentes ciudades organizan reuniones donde las personas hablan sobre aspectos interesantes de la seguridad de las aplicaciones web. Debería considerar unirse a uno en su área.
Puede toda la información en el sitio web de OWASP: http://www.owasp.org
No estoy muy seguro de si llegaría a decir "debes escribir el código de explotación", pero me gustaría de acuerdo con "debe haber reproducido una vulnerabilidad al menos una vez". P.ej. debe haber intentado 'password =" 'OR 1 = 1 "' al menos una vez para obtener una apreciación de la inyección de SQL. +1 de todos modos. – deceze
@deceze Si todo lo que puedes aprovechar es una tautología simple, entonces esto es todo lo que puedes defender contra la antigüedad. ¿Cómo haces para probar un parche? – rook