CASI 2000 APLICACIONES DE IOS Y ANDROID CONTENÍAN CREDENCIALES DE AWS ESCRITAN EN EL CODIGO

Symantec descubrió credenciales de AWS codificadas en más de 1800 aplicaciones móviles y advirtió sobre los riesgos potenciales asociados con prácticas de seguridad deficientes.

Si bien el equipo de búsqueda de amenazas de Symantec analizó las aplicaciones de Android e iOS, casi todas las aplicaciones que contenían credenciales codificadas fueron desarrolladas para iOS.

Un análisis más detallado reveló que el 77 % de las aplicaciones contenían tokens de acceso de AWS válidos que brindan acceso a servicios de nube privada y casi la mitad contenían tokens que brindan acceso completo a archivos, en algunos casos millones de archivos, en el servicio de almacenamiento de Amazon S3.

El estudio destaca una vulnerabilidad de la cadena de suministro con implicaciones potencialmente graves. Más de la mitad de las aplicaciones móviles usaban los mismos tokens de acceso de AWS que estaban presentes en otras aplicaciones, a menudo creadas por diferentes desarrolladores y empresas.

El origen de la vulnerabilidad suele ser un componente que utilizan varios desarrolladores, como una biblioteca de terceros o SDK. Si bien en algunos casos las claves de acceso que se encuentran en una aplicación son necesarias para descargar o cargar activos o recursos, para acceder a archivos de configuración o para acceder a servicios en la nube, a veces simplemente están ahí porque el desarrollador las olvidó.

Es posible que las credenciales solo permitan acceder a un activo específico, en cuyo caso su exposición tiene un impacto limitado. Sin embargo, en algunos casos, el desarrollador puede estar usando y exponiendo sin darse cuenta un token de acceso que pone en riesgo todos los archivos y el almacenamiento de una organización.

“Imagínese una empresa de empresa a empresa (B2B) que proporcione acceso a su servicio mediante un SDK de terceros e incruste una clave de acceso codificada de AWS, exponiendo no solo los datos privados de la aplicación mediante el SDK de terceros, sino también los datos privados de todas las aplicaciones que usan el componente de terceros”, explicó Symantec.

Los investigadores de Symantec compartieron tres casos de estudio. Uno de ellos involucró a una empresa B2B que proporcionaba una intranet y una plataforma de comunicación, a la que también se puede acceder a través de un SDK móvil. El SDK contenía un token de AWS codificado, que la empresa necesitaba para acceder al servicio de traducción de AWS.

Sin embargo, en lugar de limitarlo al servicio de traducción, el token proporcionó acceso a todos los servicios en la nube de AWS de la empresa, incluidos los datos corporativos de los clientes, los registros financieros y los datos de los empleados, así como los archivos utilizados en la intranet de la empresa durante más de 15 000 compañías.

En otro ejemplo, cinco aplicaciones bancarias populares de iOS usaron el mismo SDK de identidad digital. El SDK contenía credenciales en la nube que exponían datos de autenticación privados y claves pertenecientes a cada aplicación financiera que usa el SDK. La clave de acceso también expuso 300.000 huellas digitales biométricas, datos personales, datos de infraestructura y código fuente.

Symantec también se encontró con una biblioteca vulnerable utilizada por 16 aplicaciones de juegos de apuestas en línea, que expuso las credenciales de la cuenta raíz que brindaban acceso a la infraestructura y los servicios en la nube.

“Agregar soluciones de escaneo de seguridad al ciclo de vida de desarrollo de la aplicación y, si se utiliza un proveedor externo, solicitar y revisar las boletas de calificaciones de la aplicación móvil, que pueden identificar cualquier comportamiento no deseado o vulnerabilidad de la aplicación para cada versión de una aplicación móvil, puede ser útil para resaltar el potencial problema”, dijo Symantec. “Como desarrollador de aplicaciones, busque una boleta de calificaciones que analice SDK y marcos en su aplicación e identifique la fuente de cualquier vulnerabilidad o comportamiento no deseado”.