Sunteți pe pagina 1din 13

Universidad Nacional de Asunción

Facultad Politécnica

Alexis Risaldi Luz Benítez Cirilo Vázquez

Sistemas Operativos

Seguridad en Android

2018
Contenido
Introducción............................................................................................................................................ 2
Análisis de seguridad de reinicios de fábrica de Android ....................................................................... 3
Aspectos Técnicos ............................................................................................................................... 3
Sistemas flash y de archivo ................................................................................................................. 4
Niveles de eliminación de seguridad .................................................................................................. 4
API de eliminación del Kernel de Linux............................................................................................... 5
Particiones de datos................................................................................................................................ 5
Posibles atacantes............................................................................................................................... 6
Recomendaciones................................................................................................................................... 7
Encriptación en Android: ventajas, desventajas y cómo hacerlo. ¿En qué consiste la encriptación? ... 8
¿Cómo cifra Android? ......................................................................................................................... 8
Cómo cifrar tu dispositivo Android ..................................................................................................... 9
Por qué debo encriptar mi Android ..................................................................................................10
Las desventajas de encriptar un Android..........................................................................................10
Conclusión.............................................................................................................................................11
Bibliografías y Referencias ....................................................................................................................12
Introducción

Con cientos de millones de dispositivos que se esperan ser vendidos para finales del 2018, fallas en las
funciones de sanitación de teléfonos inteligentes podrían presentar un grave problema.

Los informes de prensa comercial ya han planteado dudas sobre la efectividad en los reinicios de
fábrica de Android, Factory Reset.

Se estima que al menos 500 millones de dispositivos podrían no resetear adecuadamente la partición
de datos donde se almacenan las credenciales y otros datos confidenciales, y que hasta 630 millones
no pueden “vaciar“ correctamente la tarjeta SD interna, donde generalmente se guardan archivos
multimedia. Se ha demostrado la posibilidad de recuperar credenciales de Google en todos los
dispositivos que presentaron fallas de Factory Reset. La posible solución sería la encriptación completa
del disco, pero se han encontrado fallas que dejan suficientes llaves de encriptación y que podrían ser
utilizados para recuperar datos.
Análisis de seguridad de reinicios de fábrica de Android

La extracción de datos de dispositivos revendidos presenta una creciente amenaza a medida que más
usuarios compran dispositivos de segunda mano, El mercado de segunda mano sigue creciendo, ya
que las personas son propensas a comprar nuevos dispositivos costosos si saben que después lo
pueden poner a reventa, pero los fallos de saneamiento tienen el potencial de interrumpir el
crecimiento del mercado. Si los usuarios temen por sus datos, pueden dejar de intercambiar
dispositivos viejos y comprar nuevos; o pueden continuar actualizando, pero serian reacios a adoptar
servicios sensibles como la banca, frenando así la innovación. Los vendedores de teléfonos podrían
ser responsabilizados bajo leyes de protección al consumidor o protección de datos.

Muchas veces se recomienda que los usuarios utilicen la función de reinicio de fábrica “Factory Reset”
del dispositivo.

Aspectos Técnicos

 Yaffs2: Acceso en bruto al flash. Raw flash access.


 Ext4: Acceso al bloque lógico. Logical block access.
 En un eMMC (derecha), el bloque lógico N se asigna al bloque físico N + 3 por el eMMC, y
remapeado al bloque M después de una sobrescritura.
 MTD significa dispositivo de tecnología de memoria.
Sistemas flash y de archivo

Los teléfonos inteligentes utilizan flash para la memoria no volátil de almacenamiento porque son
baratos, pequeños y rápidos. La memoria flash generalmente se ordenan en páginas y bloques. La CPU
puede leer o escribir una página (generalmente de 512+16 hasta 4096+128 datos+metadatos bytes),
pero pueden eliminar solo de 32 hasta 128 paginas. Cada bloque contiene ambos, datos y datos fuera
de banda “out-of-band”(OOB) o matadatos usados en un bloque con mala administración, error de
corrección de códigos (ECC) y archivos del sistema. Los bloques deberían ser borrados con antelación
para poder ser reescritos, pero los chips flash soportan un numero finito de programas de borrado
cíclicos, por lo que algoritmos de nivelación de desgaste son utilizados para ayudar a las operaciones
de borrar y escribir.

También vale la pena mencionar que el almacenamiento flash suele ser aprovisionado en exceso, es
decir, un chip tiene más espacio interno del que anuncia el sistema operativo, para prevenir bloques
defectuosos y reducir aún más el desgaste

Niveles de eliminación de seguridad

Cuando se elimina un archivo, un Sistema Operativo generalmente elimina solo su nombre de una
tabla, más que eliminar su contenido. La situación se agrava en una memoria flash porque la
actualización de datos no ocurre en el lugar, el dato es copiado en un nuevo bloque para preservar su
rendimiento, reduciendo el conteo del bloque de borrado y disminuir el desgaste. Por lo que existen
varias recomendaciones, pautas y estándares para sanitar los datos.

En el nivel más alto se encuentra la sanitación análoga, este degrada la señal analógica que codifica
la información, por lo que su reconstrucción es imposible incluso con equipos más sensibles y expertos
en detección avanzada, ejemplo; las pautas de sanitación de NIST (NIST 800-88).

El segundo nivel es la sanitación digital, los datos digitalmente sanitados no pueden ser recuperados
bajo ninguna vía digital incluyendo algún intento de pasar al controlador del dispositivo o su firmware,
o a través de comandos sin documentar de controladores, pero este nivel no está disponible en un
teléfono inteligente típico.

El tercer nivel es la sanitación lógica, los datos lógicamente sanitados no pueden ser recuperados a
través de un hardware estándar, interfaces como los comandos eMMC estándares. Por ejemplo; el
nivel de “limpieza” de NIST 800-88 sugiere “limpiar “los datos manualmente seguida de un reseteo de
fábrica.
API de eliminación del Kernel de Linux

Los programas privilegiados de espacio de usuario pueden borrar bloques flash llamando a la función
ioctl() expuesto por el kernel de Linux.

En las flash en bruto o raw flash, el ioctl() la opción MEMERASE proporciona una sanitación digital. En
el eMMC existen dos opciones posibles:

El primero es BLKDISCARD el cual no posee garantías de seguridad. Internamente, el kernel


generalmente implementa esta opción pasando al eMMC el comando “DISCARD” o “TRIM”al chip.
Estos no requieren que el eMMC purgue los bloques, por lo que el eMMC lo puede borrar si este es
necesario durante la ejecución de eventos de borrado.

La segunda opción es BLKSECDISCARD, este provee “seguridad “al borrado. El kernel implementa
BLKSECDISCARD pasando al chip una de las varias opciones de comando de “borrado seguro” definidos
por el estándar eMMC, el comando es utilizado dependiendo si el chip lo soporta. También existe una
opción de comando “ERASE” para sanitación lógica y comandos como “SECURE TRIM”, “SECURE
ERASE” y “SANITIZE” para sanitaciones digitales.

Particiones de datos

Los dispositivos Android comparten tres particiones para el almacenamiento de datos, la primera es
la partición de datos, generalmente montado en /data/, donde se hospedan los directorios privados
de las aplicaciones, un directorio privado de una app no puede ser leído ni escrito por otra app, por lo
que comúnmente es usado para almacenar información sensible como las credenciales de logeo. La
segunda partición almacena los datos de usuario interna en la memoria primaria del SD card, a pesar
de su nombre no es un SD card de por sí, más bien una partición físicamente almacenada en el mismo
chip. Generalmente se encuentra montado en /sdcard/ o /mnt/sdcard/, el cual es leíble y escribible
por las aplicaciones.

La tercera partición contiene los datos del usuario y es la memoria externa extraíble SD card. Ofrece
una función similar al SD interno, pero puede ser físicamente removida o insertada por el usuario. si
no existe un SD card interno el SD externo actúa como “SD primario” de otra manera es llamado “la
segunda SD card”
Fig 1 Particiones comunes de Android, cada rectangulo representa una particion en el mimo almacenamiento flash

Fig 2 Reestablecer de fábrica desde ajuste y desde el modo recovery.

Posibles atacantes

Los compradores individuales de dispositivos en páginas de reventa o venta en línea tales como eBay
podrían ser potenciales atacantes. Solo necesitan un poco de tiempo para seguir acciones y pagar un
poco de dinero por comisiones y envíos además de contratos de bajo valor legal como una cuenta de
email.

Recuperar y analizar conversaciones e imágenes (para extorsionar a sus víctimas) requieren


intervención humana y herramientas avanzadas y un simple historial del buscador donde una
búsqueda de palabra clave podría ser eficiente. Extorsionar a usuarios requiere suficientes datos para
comprometer al mismo.

Fig 3Contactos con nombres y numeros de Whatsapp

Fig 4 Contraseñas de WIFI

Fig 5Tokens de Android

Recomendaciones

Para los revendedores, es recomendable utilizar un e MMC que soporte la sanitación digital, y el
apropiado uso del BOOTLOADER, Recovery y kernels de Android.

 Utilizar un emulador de SD card primario: esto asegura que solo una partición necesite ser
apropiadamente sanitado en el teléfono, reduciendo el espacio para errores.
 Eliminar la partición entera, no solo la parte explícitamente utilizada por los archivos del
sistema.
 Implementar la sanitación de todas las particiones en un solo lugar.
 Exponer una opción para que el modo recovery tenga una sanitación validada, leyendo de
vuelta la partición entera y chequeándola.
 Obtener unidades de testeo para vendedores, para testear sanitaciones en el Android
Compliance Suit Test (CST)
 No revender o comprar un dispositivo con una sanitación insegura a fallos.
 Almacenar los metadatos encriptados al inicio de la partición de datos en un header de
encriptación.

Encriptación en Android: ventajas, desventajas y cómo


hacerlo. ¿En qué consiste la encriptación?
Encriptar es una manera de codificar la información para protegerla frente a terceros. Consiste en
mezclar los datos con una contraseña o clave, de modo que queden irreconocibles. Básicamente, eso
es lo que significa encriptar un Android. Incluso si esos datos llegarán a caer en manos de otra persona,
no se entenderían debido a que están fusionados con la clave. La única forma de verlos y hacerlos
legibles es saber cuál es la clave de encriptación. Es posible que algunos prefieran decir que encriptar
simplemente es un sinónimo de ocultar, aduciendo que el concepto anterior es más bien una forma
de encriptación llamada “cifrar”. En cualquier caso, la idea de encriptar el celular es proteger la
información con una clave.

¿Cómo cifra Android?

El cifrado de disco completo en Android se incorporó en la versión Honeycomb (3.0) y no hubo muchos
cambios hasta Kit Kat (4.4). Aunque se lo ha nombrado como FDE (Full Disk Encryption o cifrado de
disco completo), Android no cifra el disco completo, solo lo hace con las particiones de usuario. Si la
contraseña configurada es de larga longitud, se reducen las posibilidades de éxito ante un ataque de
fuerza bruta; sin embargo, muchas veces es configurado el método por PIN, el cual requiere una
contraseña de 4 dígitos. Debido a lo poco funcional que resulta, por ejemplo, colocar una contraseña
de 10 caracteres para poder leer un mensaje de texto o hacer una llamada, se opta por esta alternativa
de 4 dígitos -lo cual facilita el éxito en un ataque de fuerza bruta. Si bien existe un límite de intentos,
que bloquea el intento de fuerza bruta, la posibilidad de combinación de una contraseña de 4 dígitos
tiene un límite de 9.999 combinaciones posibles; en cambio, en una contraseña alfanumérica las
combinaciones son mayores, ya que permite combinar mayúsculas, minúsculas, números, símbolos y
demás. No obstante, las compañías trabajan mejorando constantemente. La nueva actualización del
sistema operativo de Google, Android Lollipop, incorpora algunas mejoras en lo que refiere a
seguridad, como:
 Cifrado de disco completo

 Para cifrar el dispositivo ya no requiere una contraseña en la pantalla de bloqueo, aquí sugiere que
la llave de cifrado de contraseña no es directamente derivada de la contraseña de bloqueo de pantalla

Los móviles a partir de Android 5 y 6 ya vienen encriptados de fábrica, así que no es necesario el
proceso anterior. Lo único que necesitas es configurar tu pantalla de bloqueo con un patrón o PIN
(este último es más recomendable por ser más seguro). Para cifrar el dispositivo, no es necesario
invertir dinero o comprar alguna aplicación externa, ya que esta característica viene incorporada en
el sistema operativo.

Cómo cifrar tu dispositivo Android

Primero, deberás acceder a: Configuración > Seguridad > Encriptado

En el ejemplo que vemos arriba, con la versión Android Kit Kat, se puede cifrar por separado el
dispositivo (no es el teléfono completo, solo particiones del usuario) y la memoria SD. Lo más
conveniente es realizar el cifrado en ambos medios. Una vez seleccionada esta opción, vemos un
mensaje como el de la derecha, donde se informa que el proceso dura aproximadamente una hora,
por lo que es recomendable dejar el dispositivo conectado a la electricidad ya que este proceso no
debe interrumpirse. Otro aspecto a tener en cuenta es que obligará al usuario a poner una contraseña
alfanumérica para desbloquear la pantalla.
Por qué debo encriptar mi Android
Es muy probable que tu móvil Android esté lleno de información muy personal e incluso información
profesional. Números de cuentas, contraseñas, conversaciones íntimas, etc. Seguramente no será
bueno para ti que esos datos puedan ser usados como evidencia en caso de problemas legales o ser
accesibles para la persona que se apodere de tu teléfono sutilmente o a la fuerza, en el caso de un
robo, por ejemplo. Los datos de un Android guardados en la memoria interna y la tarjeta SD pueden
ser recuperados incluso si se ha hecho una restauración de fábrica o se ha borrado manualmente la
información. Esa es otra razón para usar la encriptación. Suponiendo que alguien logre recuperar los
datos de tu teléfono con algún software de recuperación, estos no podrán ser decodificados y vistos.

Las desventajas de encriptar un Android

Se hace lento. Esa es la forma más simple de explicar lo que pasa cuando se encripta un dispositivo
Android. La encriptación reduce notablemente la performance del móvil. La velocidad de lectura y
escritura del almacenamiento del dispositivo se reduce considerablemente al encriptar el dispositivo,
lo que básicamente se traduce en reducción de velocidad y fluidez al usar el móvil. Esto ha sido
comprobado a nivel muy profundo por el sitio web anandtech.com, usando para sus pruebas el
Motorola Nexus 6, uno de los móviles Android más potentes ahora mismo. Si es un teléfono Android
viejo o antiguo, la encriptación puede resultar más perjudicial que beneficioso. En teléfonos de última
generación la performance todavía se reduce al encriptar el móvil, pero puede ser bastante
manejable. No hay vuelta atrás. Ese es otro problema de encriptar tu Android. No se puede quitarle
la encriptación a los datos de forma definitiva. Cada vez que reinicies o enciendas tu Android deberás
ingresar la clave de encriptación, SIEMPRE. La única forma de deshacerte de la encriptación es
restablecer la configuración de fábrica del teléfono, lo que significa que todos tus datos se borrarán.
La duración de la batería puede verse reducida.
Conclusión

La mayoría de la población posee equipos con Android que ya no se usan solo como teléfonos, sino
que se han vuelto computadoras portátiles que caben en la palma de la mano y hasta ayudan a realizar
las tareas cotidianas. En este sentido, es aconsejable darle la importancia que se merece a la
configuración de seguridad de un equipo, ya que, al manejar tanta información sensible como
contraseñas, correos, datos bancarios e imágenes, en caso de robo o extravío se estaría perdiendo
más que solo un aparato. Además, si no se toman los recaudos necesarios en Internet, se podría
perder el control del equipo en manos de riesgos virtuales que tienen poco, o nulo, interés en el
hardware; solo buscan la información. Al aplicar las buenas prácticas la seguridad estará en un nivel
muy alto, y si estas se complementan con una solución de seguridad se podrá lograr un estándar
adecuado para el uso correcto del dispositivo con Android.
Bibliografías y Referencias

 Mahajan, M. Dahiya, and H. Sanghvi, “"Análisis forense de aplicaciones de mensajería


instantánea en dispositivos Android", arXiv preprint arXiv:1304.4915, 2013.
 T. Vidas, C. Zhang, and N. Christin, “Hacia una metodología de recolección general para
dispositivos Android” Digit. Investig., vol. 8, pp. S14– S24, Aug. 2011.
 S. Varma, R. J. Walls, B. Lynn, and B. N. Levine, “Efficient Smart Phone Forensics Based on
Relevance Feedback,” in Proc. ACM Workshop on Security and Privacy in Smartphones and
Mobile Devices, Nov 2014

S-ar putea să vă placă și