Español | English
rss facebook linkedin Twitter

Symbian debugging

La semana pasada nuestra noticia sobre el malware de Symbian (y su relación con ZeuS) tuvo una gran repercusión, y muchos nos habéis preguntado cómo se puede realizar un debug de una aplicación (buena o mala) sobre Symbian. En este caso nos vamos a centrar en la plataforma Symbian S60.

Necesitamos los siguientes elementos:
  1. Un teléfono móvil de la mencionada plataforma S60
  2. El cable de conexión USB
  3. Una aplicación Symbian que queramos analizar (si tenemos el .sis, puede ser más sencillo a la hora de instalar)
  4. Carbide C++. Se puede descargar de la página de Nokia (requiere registro gratuito). Aunque require tener instalado Perl y un SDK de Symbian, para instalar el agente TRK no hace falta.
  5. IDA Pro con soporte de ARM
Una vez que tenemos todos estos elementos, tenemos que instalar primero el agente TRK en el móvil para que podamos hacer debug de las aplicaciones. Para ello al iniciar Carbide C++ vamos a 'Help->On-Device Connections', creamos una nueva conexión USB, seleccionamos 'Install remote agents' e instalamos el agente que corresponde con la versión del móvil que tengamos. Si todo va bien, en nuestro teléfono nos pedirá el 'Ok' para instalarlo y aparecerá una nueva aplicación llamada 'TRK Agent', que simplemente tendremos que configurar diciendo que la conexión es USB, e indicar que se conecte.

Ahora podemos ya arrancar nuestro programa favorito IDA Pro, para poder configurarlo y que se conecte remotamente al agente TRK del móvil.
Para ello, abrimos el archivo que queremos hacer debug en el IDA Pro (en este caso seleccionamos que la arquitectura es ARM) y configuramos las propiedades del proceso. Es importante poner bien el PATH del binario en el móvil (generalmente en c:\sys\bin) y que el puerto sea el 23946, puesto que así el IDA Pro buscará a ver en que puerto está conectado el teléfono (puesto que poner directamente el puerto COM no suele funcionar).

Una vez que esté todo correctamente configurado, ya sólo tenemos que dar a 'Start process' y podremos hacer debug sin problemas de la aplicación elegida.

David Barroso
S21sec e-crime

3 comentarios:

Mario Vilas dijo...

Nice :)

Hay que aclarar que de esta forma solo se pueden debuguear los programas que el usuario instale en el telefono.

Los programas que ya vienen con el firmware, o el kernel del dispositivo, no pueden debuguearse sin antes hacer algunos parches al driver de debug.

Saludos!

S21sec e-crime dijo...

Gracias Mario,
un buen apunte! :)

David

edelfa dijo...

Como lectura complementaria y/o adicional yo recomendaría:

https://www.sec-consult.com/files/SEC_Consult_Vulnerability_Lab_Pwning_Symbian_V1.03_PUBLIC.pdf

Aparte de los detalles aclarados por Mario Vilas, aporta otros temas interesantes.

Un Saludo!!


(+34 902 222 521)


24 horas / 7 días a la semana



© Copyright S21sec 2013 - Todos los derechos reservados


login