Taint Analysis
El análisis de taint rastrea cómo los datos no confiables (fuentes de contaminación) se propagan por un programa y comprueba si alcanzan operaciones peligrosas (sumideros).
Propósito
Detectar vulnerabilidades de inyección (SQLi/XSS/inyección de comandos), garantizando que la entrada del usuario se sanea antes de llegar a operaciones peligrosas.
Mecanismo
Marca la entrada del usuario como fuente de taint y rastrea su propagación por asignaciones y operaciones. Alerta si datos contaminados alcanzan un sumidero (consulta SQL, exec, innerHTML) sin sanear. Se implementa de forma estática (FlowDroid) o dinámica (TaintTrace).
Casos de uso
- Detección de vulnerabilidades de inyección
- Auditoría de seguridad
- Seguimiento del flujo de datos