OWASP, una organización que brinda orientación a los desarrolladores de aplicaciones, tiene algunos materiales de referencia:
- La referencia de almacenamiento de datos inseguros de Mobile Top Ten 2012 original - enlace
- La referencia actualizada sobre almacenamiento de datos inseguros de Mobile Top Ten 2014 - enlace
- Una hoja de trucos para desarrolladores de iOS que hace sugerencias específicas sobre dónde almacenar qué tipos de datos, cuando se requieren las tareas funcionales de una aplicación: enlace
Para Android, podría sugerir el uso de preferencias-seguras en lugar de las Preferencias Compartidas que sugirió, o tal vez cwac-prefs . Vea ejemplos de estos en el libro de recetas de seguridad de Android.
En iOS, asegúrese de leer el libro de Seguridad de aplicaciones de iOS, que recomienda Lockbox para almacenar datos en el llavero, también Como métodos para agregar y eliminar credenciales. Si está creando una aplicación móvil iOS, este libro es muy recomendable.
Si no te gusta o por alguna razón no puedes usar Lockbox (o simplemente quieres probar diferentes opciones), entonces revisa esta idea del libro, Pruebas de penetración de aplicaciones móviles:
Utilice las diferentes opciones proporcionadas por Apple, como aprendimos en el
sección Protección de datos de llavero en el Capítulo 2, Snooping Around the
Arquitectura. También puedes utilizar uno de los simples envoltorios.
PDKeyChainBindingController
( enlace ) para asegurar
Los datos del llavero. Sin embargo, si el dispositivo tiene jailbreak, entonces llavero
La información no es segura. Se recomienda utilizar cifrado personalizado.
Técnicas para cifrar la cadena que se almacena en el llavero. Hacer
El mejor uso de los servicios de llavero API.
( enlace ).
El libro también trata otro tema relacionado con el almacenamiento de credenciales en el llavero:
El 18 de junio de 2015, una vulnerabilidad de robo de contraseña, también conocida como
XARA (ataque de recursos de aplicación cruzada), descrito para iOS y OS X
Rompió los servicios de Llavero en la cárcel rota y la no rota
dispositivos La vulnerabilidad es similar a la solicitud entre sitios.
Ataque de falsificación en aplicaciones web. A pesar del aislamiento de Apple.
protección y la investigación de seguridad de su App Store, fue posible
Eludir el mecanismo de control de seguridad. Proporcionó claramente la
Necesidad de proteger el mecanismo de aplicación cruzada entre el sistema operativo.
y el desarrollador de la aplicación. Apple lanzó una actualización de seguridad semana después
La investigación de XARA. Más información se puede encontrar en
enlace
y proporciona detalles sobre el llavero en sí, si se utiliza un dispositivo con jailbreak para intentar acceder a él
El llavero en un dispositivo iOS se usa para almacenar de manera segura información confidencial
información como credenciales, como nombres de usuario, contraseñas,
tokens de autenticación para diferentes aplicaciones, y así sucesivamente, a lo largo de
con credenciales de conectividad (Wi-Fi / VPN) y así sucesivamente. Se encuentra en
Los dispositivos iOS como un archivo de base de datos SQLite cifrado ubicado en
/private/var/Keychains/keychain-2.db