Prácticas recomendadas de seguridad para desarrolladoresAdobe AIR 1.0 y posterior Aunque las aplicaciones de AIR se crean usando tecnologías web, es importante que los desarrolladores observen que no están trabajando dentro del entorno limitado de seguridad del navegador. Esto significa que es posible crear aplicaciones de AIR que pueden causar daño al sistema local, ya sea accidental o malintencionadamente. AIR intenta minimizar este riesgo, pero aún hay maneras donde se pueden introducir vulnerabilidades. Este tema abarca importantes situaciones potenciales no seguras. Riesgos de importar archivos en un entorno limitado de seguridad de la aplicaciónLos archivos que existen en el directorio de la aplicación se asignan al entorno limitado de la aplicación y tienen privilegios completos del motor de ejecución. Se recomienda que las aplicaciones que escriben en el sistema de archivos local escriban en app-storage:/. Este directorio existe de forma separada de los archivos de la aplicación en el equipo del usuario, por ende los archivos no están asignados al entorno limitado de la aplicación y presentan un riesgo reducido de seguridad. Se recomienda que los desarrolladores consideren los siguientes puntos:
Riesgos de usar un origen externo para determinar rutasUna aplicación de AIR puede correr riesgos cuando se usan datos o contenido externo. Por esta razón, tenga cuidado cuando utiliza datos de la red o del sistema de archivos. La responsabilidad de confianza depende del desarrollador y las conexiones de red que realizan, pero la carga de datos externos es intrínsicamente peligrosa y no se debería usar para operaciones confidenciales. No se recomienda que los desarrolladores:
Riesgos de usar, almacenar o transmitir credenciales no segurasEl almacenamiento de credenciales de usuario en el sistema de archivos local del usuario intrínsicamente introduce el riesgo de que estas credenciales sean vulnerables. Se recomienda que los desarrolladores consideren los siguientes puntos:
Riesgos de un ataque de desactualizaciónDurante la instalación de la aplicación, el motor de ejecución verifica que la versión de la aplicación no está actualmente instalada. Si una aplicación ya está instalada, el motor de ejecución compara la cadena de la versión con la versión que se está instalando. Si esta cadena es diferente, el usuario puede elegir actualizar la instalación. El motor de ejecución no garantiza que la versión recién instalada sea más nueva que la versión más antigua, solo que es diferente. Un atacante puede distribuir una versión anterior al usuario para evitar una debilidad de seguridad. Por esta razón, se recomienda que el desarrollador verifique las versiones cuando se ejecuta la aplicación. Es una buena idea que las aplicaciones verifiquen en la red las actualizaciones requeridas. De ese modo, aun si un atacante engaña al usuario para que ejecute una versión antigua, dicha versión antigua reconocerá que se debe actualizar. Asimismo, el uso de un esquema claro de versiones para la aplicación hace más difícil engañar a los usuarios para que instalen una versión desactualizada. |
|