Buscar este blog

domingo, 19 de mayo de 2013

Sesión 1: investigaciones en Kindle Fire


En la primera sesión aprenderemos como se lleva a cabo una investigación de Kindle, cierto que no es la tablet más popular pero precisamente por eso es tan importante saber que hacer cuando una llegue ya que hay muy poca documentación de ello 


James Habben nos muestra las diferentes versiones de Kindle:

1g gingerbread  2.3
2g ice cream sandwich  4.0
Kindle Fire HD 7" ice cream sandwich  4.0
Kindle Fire  HD 8.9" ice cream sandwich  4.0 
Todas estas son versiones bastante modificables de android

Ahora un caso práctico por parte de Shelby Mertins de Nebraska State Patrol
Es un caso para encontrar un video de pornografía infantil
Todas las fechas de Kindle se guardan en tiempo de UNIX para convertirlo se pueden vacían en una tabla xls y se aplican fórmulas =LEFT(d4)-3 en dónde d4 es la columna y del valor de último acceso después de revisar las fechas y horas ahora veamos la carpeta de recientes y favoritos  NINGÚN VIRUS COPIA Y PONE UN LINK A NINGUNA CARPETA DE FAVORITOS!!! 
Algunos directorios de interés al hacer una investigación: /data/data/com.amazon.kindle.otter/databases/gardemanager_cache
/data/data/com.amazon.kindle.otter/databases/cloud9_cache.db
/data/data/com.amazon.kindle.otter/databases/otterfaves.db
/data/data/com.amazon.kindle.otter/databases/browsers.db
/data/data/com.amazon.cloud9/databases/brow
/data/data/com.amazon.cloud9/files
/data/data/com.amazon.cloud9/databases/webview.db
/data/data/com.amazon.kindle.otter/databases/avi_cache.db
/data/data/com.amazon.kindle.otter/databases/cloud9_cache.db
/data/data/com.amazon.kindle.otter/databases/gardemager_cache.db
/data/data/com.amazon.kindle.otter/databases/indigo_cache.db
/data/data/com.amazon.kindle.otter/databases/otterfavs.db
/data/data/com.amazon.kindle.otter/databases/redding_cache.db
/data/data/com.android.email/databases/EmailProvider.db
/data/data/com.android.email/databases/EmailProviderBody.db
/data/data/com.android.systemui/databases/webview.db
/data/data/com.android.systemui/databases/webviewCacheChromium
/data/data/com.amazon.webruntime/files/webruntime/config/default/local storage
/data/data/com.amazon.cloud9/files/pages_thumbnail_#guid#



Ahora de manera interna 1g utiliza FAT para una partición  sdcard 
2g no contiene particiones de sistema FAT 
Los archivos se exponente por medio de MTP (media trasnfer protocol)
Y aquí las particiones de los usuarios : 
En la primera línea se muestra la partición de 1g en dónde la información se guarda en userdat con diferentes tamaños de almacenamiento, en la segunda línea se muestra la partición de 2g en dónde la info de apps se guarda en una carpeta llamada media 


Las particiones de Kindle son RO (read only) por lo que no se puede interactuar con ellas, al correr el comando mount estas particiones se montan como /mnt/sdcard vfat rw, noexec....
Los usuarios y grupos son hardcoded en android (no existe el archivo /etc/passwd como en Linux)

Kindle utiliza su propio navegador llamado Amazon silk browser que usa aceleración de l nube la cual puede ser des habilitada, el software de silk corre tanto en Fire como EC2 (elastic computer cloud), la información que se descarga de la nube es enviada en forma comprimida  y el protocolo utilizado por silk es SPDY que mejora HTTP.

Hay tres maneras de adquirir la información de un Kindle Fire 
* capturas de pantalla
* adquisición lógica 
* adquisición física 

Dalvik debug monitor (DDMS/Monitor) tiene una funcionalidad para hacer costuras de pantalla no requiere root se necesita tener USB debugging lo cual es una funcionalidad que en la primera generación está activado de manera predeterminada sin opción a deshabilitar mientras que en 2g esta desactivada por defecto con opción a activarla  y es parte de las herramientas de android \android-sdk\tools sin embargo algo que tenemos que notar aquí es que estas herramientas sdk de android necesitan drivers para funcionar algunos drivers vienen instalados r defecto sin embargo si es necesario descargarlos pueden hacerlo desde http://developer.android.com/tools/extras/oem-usb.html en caso de que no funcionen es necesario instalarlos de manera manual. 

En EnCase se pueden instalar de la siguiente manera :
1- insertar Kindle Fire USB 
2- abrir el device manager
3- encontrar el dispositivo Kindle con el símbolo amarillo que indica un problema de drivers
4- clic derecho actualizar controlador o driver
5- explorar la computadora en busca del driver
6- direccionarlo a C:Program Files\encase7\mobile\drivers
7- permitir uknown publisher

Para verificar los detalles de el driver 
8-  click derecho en device>properties
9- pestaña de talles o details
10-  en el menú desplegable de propiedades seleccionar Hardware lds
11- debe existir un valor VID_#### 
Esto es necesario para que el sistema reconozca el dispositivo y puedas utilizar herramientas como encase7 y otros comandos manuales. 

Otro método de adquisición es poniendo el dispositivo como root, obviamente Amazon no quiere que los usuarios pongan el dispositivo como root para poder poner el dispositivo en root sería bueno que revisaran el research de este foro http://forum.xda-developers.com/showthread.php?t=1307
http://forum.xda-developers.com/showthread.php?t=2192818
http://forum.xda-developers.com/showthread.php?t=1886460

Una ves puesto el dispositivo en root se puede tomar una imagen física del dispositivo con las siguientes herramientas : 
* android busybox que contienen comandos de Linux que de manera nativa android no tiene, de manera específica dd ( disk dump) y nc (netcat).
* Netcat ejecutable para Windows 
Y confirmar acceso con cmd: adb shell
Si al ejecutar obtienes $ no conseguiste el root si tienes # has puesto el dispositivo en root ahora el comando para obtener la imagen sería :
busybox dd if=dev/block/platform/mmci -ompa -hs.1/by -name/ userdata | /data/busybox nc -l -p 5555  
D manera opcional se puede obtener todo el dispositivo con if=/dev/block/mmcblk10 
Y por último hay que abrir una nueva pantalla de comandos en el host con netcat y debemos ejecutar el siguiente comando : netcat localhost 5555 > userdata.dd


No hay comentarios:

Publicar un comentario