Hay muchas cosas que pueden salir mal con una aplicación web. Además de XSS y SQLi, existe:
- CSRF:falsificación de solicitud entre sitios
- LFI/RFI - Inclusión de archivo local/Inclusión de archivo remoto causada por
include()
,require()
... - Inyección de CRLF en
mail()
- Entorpecimiento del espacio de nombres de variable global causado comúnmente por
register_globals
,extract()
,import_request_variables()
- Visualización de directorios:
fopen()
,file_get_contents()
,file_put_conents()
- Ejecución remota de código con
eval()
opreg_replace()
con/e
- Ejecución remota de código con
passthru()
,exec()
,system()
y ``
Hay toda una familia de vulnerabilidades con respecto a Broken Authentication and Session Management que es parte del OWASP Top 10 que todo programador de aplicaciones web debe leer.
Un estudio en escarlata es un buen documento negro que repasa muchas de estas vulnerabilidades que he enumerado.
Sin embargo, también hay vulnerabilidades extrañas como esta en Wordpress . La autoridad definitiva sobre lo que es una vulnerabilidad es el sistema CWE que clasifica CIENTOS de vulnerabilidades, muchas de las cuales pueden afectar a las aplicaciones web.