Reviviendo GoPro con Hard-Brick aka GoPrisapapeles


Como muchos sabéis uno de mis intereses son los dispositivos embebidos, pese a esto uno de los dispositivos a los que nunca me hubiese gustado meterle mano era mi querida GoPro, hasta ayer...

Resulta que justo ayer (Martes 13 para mas inri) se me ocurrió actualizar el firmware de la cámara para conseguir alguna de las últimas mejoras que trae pero para mi desgracia la cámara nunca mas encendió, tras el pánico inicial empecé a hacer pruebas con ella probando las combinaciones de teclas para forzar un hard reset, con SD, sin ella...etc sin resultado hasta que al conectarla por USB y sin batería vi que el led frontal parpadeaba muy levemente, al ver que al menos daba alguna señal de vida y conectada a USB  probé a encenderla y si bien la cámara seguía muerta el ordenador me la reconoció como un "Dispositivo USB desconocido".

En este punto sabemos que al menos la cámara tiene algo de vida y que existe algún tipo de comunicación por USB pero que durante la actualización fallida la memoria se ha borrado por completo.

Tras una llamada al soporte técnico me confirman que esto es un error habitual y que me la reemplazan en garantía, pero claro...el verano está aquí y no quiero quedarme sin ella 2 meses, así que una rápida búsqueda en Google me devuelve la salvación:

https://github.com/evilwombat/gopro-usb-tools

Este set de herramientas nos proporciona diferentes maneras devolver la vida a nuestra cámara, la primera y mas sencilla es restaurar el bootloader, en mi caso no era válido porque todo el firmware había sido wipeado. La segunda (El que yo he usado) se encarga de recargar el Bootloader, HAL y RTOS, a grandes rasgos lo que hace es parchear el bootloader para que apunte a lo que nosotros cargamos en unas direcciones de memoria altas para evitar que cargue cualquier archivo corrupto de la actualización fallida. Por último este set de herramientas nos proporciona una shell interactiva (en 10.9.9.1) con la que podemos movernos dentro de la cámara y verificar la integridad del sistema y la memoria flash.

Bueno, ahora que ya os he presentado la herramienta vamos a ver los pasos para revivir la pequeña.

AVISO: Sigue estos pasos bajo tu responsabilidad, no me hago cargo de cualquier daño que le puedas causar a tu cámara. Si aún está en garantía no seas como yo y pide el reemplazo.

Distribución de malware móvil a través de anuncios insertados

A menudo cuando navegamos por internet cientos de anuncios se nos despliegan para ofrecernos productos que ninguno necesitamos. Hace un par de dias alguien se acercó a mi a preguntarme por que mientras visualizaba contenido a través de la aplicación "Flipboard" en Android se le abría sin él hacer nada una web que le ofrecía descargarse una aplicación pornográfica, en ese momento me picó la curiosidad pero no tenía ninguna muestra del tráfico para saber desde donde se estaba sirviendo esa página. Por casualidades de la vida hoy me tocó a mi ser la víctima a la que se le ofrecía esta aplicación mientras navegaba con mi lector de feeds "Feedly".

Réplica de GPlay servida para Android
Rápidamente preparé Wireshark y repliqué la petición para capturar el tráfico generado y tener un punto por el que empezar. El resultado fue satisfactorio y la página se mostró de nuevo por lo que empecé a analizar la captura en orden inverso, así leyendo la cabecera "Referer" de las peticiones sabía de donde venía el tráfico. No fue dificil descubrir al culpable:

Ahora sabemos que el anuncio insertado en pastebin.com (Página legítima a la que accedí en mi navegacion normal) redirecciona a la página réplica de google play desde donde se distribuye el malware, pero intentando acceder a través del navegador de escritorio la página que se muestra es totalmente diferente y solo despliega una imagen con un enlace a una página legítima.

Pagina mostrada al navegador de escritorio

La explicación es sencilla. El servidor que nos entrega el anuncio detecta la plataforma desde la que se hace la petición leyendo el User-Agent de la request así que si navegamos desde el ordenador se nos sirve un anuncio válido insertando el siguiente código:

Código entregado por la página a un navegador de escritorio
En cambio si engañamos a la página haciéndole creer que estamos navegando a través de un dispositivo Android, la página nos entrega el siguiente código que nos redirecciona a la web maliciosa:

Código entregado por la página utilizando un useragent de Android
Inmediatamente se nos abre la página réplica de Google Play que nos sirve el apk troyanizado y trata de iniciar una descarga, podéis comprobar como la url que abre es la misma a la que nos redirige el anuncio:


El comportamiento en un terminal Android es todavía peor ya que no te solicita permiso para la descarga (Al menos en Firefox) y se almacena el apk en el teléfono automáticamente.

Por último antes de analizar manualmente el comportamiento del APK lo pasamos por VirusTotal para comprobar si ya había sido analizado, dandonos el resultado del analisis:


Como ya ha sido analizado nos ahorramos el trabajo de reversear el APK, el troyano que contiene es detectado por varios antivirus como TrojanSMS.Erop., su comportamiento consiste en enviar SMS desde los terminales infectados a numeros premium.

Así que ya sabeis, cuando naveguéis desde un terminal móvil intentad utilizar siempre un bloqueador de anuncios, ademas si utilizas lectores de feeds como Feedly o Flipboard no tienes esta posibilidad por lo que espero que la lectura de este artículo te ayude a estar alerta ante estos engaños.

Premios Bitacoras 2013

Como cada año llegan los Premios Bitacoras, y en ShellShockLabs también participamos en ellos. Si te gustan nuestras publicaciones puedes votarnos para darnos un empujoncito a seguir mejorando y escribiendo contenido.

Puedes acceder a las votaciones haciendo click en la imagen:



¡Gracias!

Crawling pasivo usando Google Hacking

A la hora de auditar una aplicación web son muchos los recursos que nos ayudan a hacernos un mapa mental de la web que debemos investigar. Muchas de estas herramientas generan mucho ruido en los logs ya que utilizan fuerza bruta y un listado de directorios/archivos, esto puede hacer saltar las alarmas de un administrador, por lo que yo no suelo utilizarlas (La fuerza bruta es siempre mi último recurso). En este caso vamos a ver como utilizando dorks de Google podemos conseguir muy buenos resultados y descubrir lugares que a priori estaban ocultos en la aplicación.

Aclarar que este post se basa en como yo lo hago y que como en todo cada maestrillo tiene su librillo, así que si utilizas otras técnicas te animo a compartirlas en los comentarios.

Para este ejemplo utilizaremos como objetivo la web del congreso de los diputados ( www.congreso.es ) y partiremos de la base de que desconocemos totalmente la tecnología que usa, sus subdirectorios, subdominios, etc...

[Tutorial] Reversing AXIS Q6032-E Network Camera Firmware



Hace tiempo que tenía ganas de escribir este post, si hay algo que me gusta del mundo del hacking es el reversing y todavía mas si hablamos de sistemas embebidos. En este post vamos a ver como extraer todos los archivos incluidos en una imagen de firmware.

Quiero avisar desde un principio que esto no es una ciencia exacta, por lo que lo que hagamos para esta imagen puede funcionar con el firmware de otra sistema o no, por lo que la utilidad de este texto es servir como guía para conocer la metodología de trabajo y las herramientas que harán nuestra vida mas fácil a la hora de buscar vulnerabilidades en este tipo de sistemas.

En primer lugar vamos a preparar nuestro arsenal de herramientas para estos menesteres:

  • Firmware Mod Kit es un set de herramientas para descompresión y reconstrucción del firmware.
  • Binwalk es una herramienta que reconoce las cabeceras de los archivos entre otras cosas. 
  • Comandos útiles del sistema: dd, strings, hexdump, gunzip, unzip, tar ...
Todo lo anterior excepto firmware mod kit viene integrado en Kali Linux por lo que si lo tenéis mano os ahorraréis el trabajo de instalarlo.

 Bien, empecemos. Lo primero será descargar la imagen de la página del vendor


Conferencia de la NSA en la BlackHat

Como muchos sabréis la BlackHat ha comenzado y una de las charlas iniciales que mas expectativas ha generado ha sido la de la NSA a cargo del General Alexander.

Con el escandalo de PRISM en pleno apogeo y con mas y mas información publicandose es interesante ver el punto de vista de una de las partes.

Aquí tenéis el vídeo:

  

Escaneo de puertos y banner grabbing con netcat


Normalmente estamos acostumbrados a disponer de nuestro arsenal de novedosas y potentes herramientas que hacen nuestro trabajo mas facil, pero esto no es siempre así, se puede dar el caso de que una vez hemos accedido a un sistema necesitamos seguir investigando la red pero solo disponemos de las herramientas del sistema. Para esta tarea tenemos a nuestro amigo netcat.

En primer lugar hay que tener en cuenta que netcat tiene funciones tanto de cliente como de servidor, por lo que podremos establecer una conexión entre dos máquinas únicamente con esta herramienta.

Shell Shock Labs

ShellShock Labs es un blog dedicado a seguridad y hacking en general, un lugar donde buscamos que la gente participe con sus opiniones.

Síguenos




Posts Populares