¿Cómo Ocurre?
Innappropiate Asset Management se refiere al escenario donde tenemos dos versiones de una API disponibles en nuestro sistema; llamémoslas APIv1 y APIv2. Todo se migra a APIv2, pero APIv1 no ha sido borrada todavía. Cuanto más tiempo pase más peligroso será tenerla disponible e inactiva, pues eso significará que más desactualizada estará y por tanto más vulnerable será.
Impacto Posible
Las versiones más antiguas o no parcheadas de las APIs pueden permitir a los intrusos ganar acceso no autorizado a información confidencial o incluso completo control del sistema.
Ejemplo Práctico
- Durante el desarrollo API, la compañía MHT ha desarrollado diferentes versiones API como v1 y v2. La compañía se ha asegurado de usar las últimas versiones y llamadas pero ha olvidado eliminar la antigua versión del servidor.
- En consecuencia, se ha encontrado que llamadas antiguas de la API como
/apirule9/v1/user/logindevolvían más información de la necesaria como balance bancario, dirección, etc.
- Bob se dio cuenta y ha desactivado la versión antigua dejando sólo
/apirule9/v2/user/login.
Medidas de Mitigación
- Acceso a llamadas API previas y sensibles deben ser bloqueadas a nivel de red.
- Las APIs desarrolladas para R&D, QA, producción, etc deben ser segregadas y hosteadas en servidores separados.
- Asegura que la documentación de todos los aspectos API, incluyendo la autentificación, redirecciones, errores, política CORS y la limitación de frecuencia.
- Adopta estándares abiertos para generar documentación automáticamente.
