SOLUCIÓN: Apagar la IA
SOLUCIÓN SUGERIDA
1. Cada documento se accede mediante una API /codes/[ID]
2. El ID tiene 32 caracteres hexadecimales (un HASH MD5)
3. Al hacer reversing de los dos hashes MD5 conocidos obtenemos 9912 y 9995
4. Esto sugiere que el front usa hashes MD5 pero el backend mapea a enteros autoincrementales
5. La solución consiste en iterar todos los documentos posibles hasta encontrar el que contiene el código de 16 dígitos
SOLUCIÓN AUTOMATIZADA
Gracias a Juan Cruz Rodríguez Villafañe y Gregorio Tonelli por compartir su script:
¿CÓMO PREVENIR ESTA VULNERABILIDAD?
- Usar IDs verdaderamente aleatorios (UUIDs)
- Implementar autenticación y autorización para acceder a los recursos
- Limitar la tasa de solicitudes (rate limiting)
- No exponer identificadores secuenciales o predecibles
- Validar y sanitizar todas las entradas