La caja
de Pandora del HackingTeam se ha abierto y nos ha dejado ver que contenía.
Un oscuro precipicio en el que muchos, al acercarse a su borde, han encontrado
la confirmación de un temor presagiado y otros la sorpresa; gran sorpresa, al contemplar
como una empresa privada tenía el potencial
necesario para deshilachar los derechos civiles de sus objetivos, marcados
por gobiernos e instituciones, su fiel clientela.
El debate ético y legal podría dilatarse
hasta la extenuación. ¿Estaba el uso de este servicio supervisado por la
Justicia? ¿Fueron sus objetivos estrictamente relacionados con amenazas contra
la seguridad nacional de las respectivas naciones? Preguntas como estas rebotan
en las conciencias de muchos ciudadanos, que han visto en el escueto silencio y
las tímidas respuestas de quienes deberían responder con claridad el temor de
un uso extralimitado, y cercano a sistemas con democracias singulares, de estas
armas silenciosas.
No es nuestro objetivo crear opinión política
o elegir un color y un bando si tales colores o bandos existen. Sin embargo, si
deberíamos poner un contexto para enfocar con suficiente perspectiva toda la
información que va emergiendo. De esta forma, podremos entrelazar los hallazgos
técnicos con suficiente fondo de escena y que cada cual, libremente, pueda
decidir de qué lado cae la balanza o si esta se mantiene en el difícil equilibrio entre libertad y
seguridad, verdaderos enemigos irreconciliables. Sentémonos a la mesa.
L’antipasto
No hay nada como abrir nuestro apetito con un
buen plato ligero, amable al paladar y evocador a nuestra memoria.
Si existe una pieza de software inmortal la
comunidad debería conceder este dudoso honor a Adobe Flash. Decimos inmortal
porque no podemos entender a estas alturas como, sin una razón justificadora
con un peso descomunal, este pequeño complemento no ha muerto aun. Decimos
dudoso honor porque el destino único y final de toda pieza de software es
morir; ser borrada y sustituida por otra pieza que efectúe las mismas o más
funciones sin ninguno, o no más, de los necesarios defectos asumibles. En el caso de Flash los defectos han
alcanzado una cota insuperable y el conjunto de ellos con categoría de asumible
equivale al conjunto vacío.
De momento, se han encontrado hasta tres 0days. Incluso escribir estas líneas y
asegurar que son tres precisa de cierto ejercicio de atrevimiento. No llegaría
a provocar nuestro asombro, si justo después de presionar el botón de envío de
esta noticia alguien encuentra una o varias razones adicionales para elevar tan
infortunada suma una vez más.
Del primero de ellos ya
dimos noticia, los otros dos llegaron al poco tiempo, y también fueron
comentados. Sus credenciales: CVE-2015-5119,
CVE-2015-5122
y CVE-2015-5123.
Todos ellos ya incluidos en packs de
explotación conocidos, tales como: Anger, Neutrino o Nuclear. Cuidado ahí afuera.
Nuestro consejo no se ha movido un ápice
respecto a la decisión de condenar a
Flash al ostracismo digital. A la luz de las pruebas, hoy es un acto de
irresponsabilidad mantener a Flash activo en el sistema salvo que sea rotundamente
imprescindible.
Il primo
Le toca el turno a Windows. Plato caliente.
Hasta ahora se ha encontrado una
vulnerabilidad que permite elevar privilegios en el sistema, algo necesario
para que los componentes del diabólico sistema de control remoto (RCS),
pudiesen actuar por debajo de la línea del radar del usuario y sus estériles
esfuerzos por evitar una infección mediante herramientas antivirus.
El problema nos lleva de nuevo, involuntariamente,
hacia Adobe. El objeto vulnerable, y propiedad de esta última, se denomina 'atmfd.dll'. Un driver del kernel de
Windows encargado de procesar las fuentes 'OpenType'.
Afecta al rango que va desde Windows XP hasta la versión 8.1.
Este exploit ha
sido neutralizado en la remesa de parches publicados por Microsoft el
pasado martes. Concretamente en el boletín MS15-077.
Además existe otro, derivado de los correos
filtrados, que afecta a Internet Explorer 11, descubierto (redescubierto) por
la empresa Vectra e igualmente corregido en el grupo de parches MS15-065.
Curiosamente esta vulnerabilidad fue encontrada a través de una prueba de
concepto de un intento de venta por parte de un investigador independiente.
Junto con Flash, esta combinación de exploits permitía la ejecución remota de código,
por ejemplo, vía el navegador, visitando una página web controlada por el
atacante. Posteriormente bastaba ejecutar la vulnerabilidad de Windows y
asegurar el control y persistencia en el sistema. Jaque mate.
Il secondo
El plato principal queda reservado a los
sistemas móviles. La imagen noventera del ejecutivo hablando con un ladrillo
adosado a su oreja, sentado en las escalinatas de un falso Wall Street en un
fondo desenfocado pasó a la historia.
Un teléfono móvil puede portar gigas de
información en forma de correos, documentos, imágenes, etc. Un dispositivo
móvil puede capturar fotos, videos y posee antenas para ubicar con precisión a
su portador y a sus acompañantes de manera eventual. ¿A sus acompañantes?
Correcto. Si puedes obtener el sondeo que efectúa el teléfono o teléfonos
adyacentes, capturando sondas de asociación ("Probe Requests"), entonces puedes saber con que puntos de
acceso se ha vinculado y que MAC exhibe. Además si tiene el Bluetooth conectado
también puedes averiguar con suerte su nombre o una cadena que de pistas sobre
la identidad del portador.
Recuerda, si tienes el control de un teléfono
móvil tienes el control de un pequeño ordenador lleno de diminutas antenas,
sensores, cámaras, micrófonos y conexión a Internet. Somos emisoras andantes, nodos errantes que llevan y traen información
si estiramos la prosa al verso.
Il secondo es el plato fuerte por
excelencia. Carne o pescado, iOS o
Android. Vamos a dedicarle la atención debida a los ingredientes que
componen el principal de la carta. Si alguien ha echado de menos a Symbian es
adrede. Recordemos, el software está destinado a morir y ser reemplazado.
Si los usuarios de un iPhone podían suspirar
tranquilos respecto al malware circulante están de antienhorabuena. Estar en
posesión de un certificado de empresa expendido por Apple permite instalar
aplicaciones en dispositivos sin necesidad de pasar por el App Store o que el
dispositivo este liberado (Jailbreak).
Estas aplicaciones, distribuidas de manera
privada, permiten a las empresas instalar software propio en sus dispositivos.
Las aplicaciones no pasan por el riguroso examen de los técnicos de Apple ni
las condiciones del App Store. Este billete dorado permite instalar cualquier
aplicación abusando el principio de confianza que Apple otorga a los
depositarios del certificado.
El dispositivo avisa, peligro, pero no deja
de ser una molesta ventana que el usuario, arto ducho en las lides de
cierraventanismo, se apresura a esquivar cegado por la promesa del infinito
maná digital que va a proporcionarle la felicidad y una vida mejor. O eso o un
programa diseñado para hacer que un tercero termine por conocerte mejor que tu
mismo.
Fuente: https://blog.lookout.com/blog/2015/07/10/hacking-team/ |
Suficiente pescado, pasemos a la carne.
La tecnología enfocada en Android es digna de
un estudio complejo. Un vistazo al repositorio de GitHub donde han colgado el aparataje filtrado revela una completa
estructura para la fabricación y empaquetado de aplicaciones Android;
equipadas para mayor gloria del espía moderno.
Observemos un fragmento de código fuente
donde se referencia la colección de exploits para elevar privilegios a root una
vez la aplicación ha sido instalada en el sistema:
https://github.com/hackedteam/core-android/blob/master/RCSAndroid/jni/exploit_list.c |
Dichos APK, una vez troyanizados, deben ser
firmados. Como ya sabemos el rigor
certificador en el ecosistema Android es testimonial. Puedes generar tu
propio certificado y firmar cualquier aplicación con él. No se verifica la
confianza con una cadena como estamos acostumbrados a experimentar en un
navegador. Generas, compilas, firmas y ya lo puedes instalar en un sistema. De
nuevo la balanza, flexibilidad-riesgo.
Los certificados, típicamente, se guardan en
un archivo denominado 'keystore', con
extensión homónima. Un repaso a los keystores hallados en el repositorio nos
conduce a los certificados usados para firmar las aplicaciones maliciosas.
Cada keystore está protegido por una clave
para impedir al curioso eventual fisgonear en las claves. Aunque parece ser que
dicho proceso de automatización estaba elevado a su máximo exponente y los
propios scripts que se emplean en dicha tarea contienen las claves de acceso;
tanto al keystore como a la propia clave de firma.
Abriendo uno de los archivos relevantes:
¿Funcionará la firma con una simple
aplicación Hello World?
Sin sorpresas.
Ya que disponemos de los hashes de los
certificados podemos identificar los APK "tocados" por el sistema de vigilancia de Hacking Team.
Un ejemplo:
Buscamos el hash en Koodous:
https://koodous.com/apks?search=cert:2125821BC97CF4B7591E5C771C06C9C96D24DF8F
Nos lleva a tres APKs:
Ni caso a los campos que identifican el
desarrollador o compañía, son editables cuando se crea un nuevo certificado.
Ninguna entidad ha comprobado y certificado que realmente ese es el
desarrollador.
El código de la aplicación está bastante
ofuscado, obviamente necesitaban ocultar el funcionamiento del sistema de
control remoto aprovechando todos los medios disponibles.
Esto dificulta el análisis estático, siempre
que no dispongas del código fuente…
Sospechamos que com.android.dvci es el
armazón con el que se envuelve a cualquier aplicación Android que se desee
troyanizar. Una lectura a vuelapluma por el código revela interesantes detalles
que apuntan a, efectivamente, un complejo y detallado sistema de captación de
información.
Detalle de la carpeta donde se encontrarían los distintos módulos de funcionalidad. |
Observemos la correspondiente a la aplicación
WhatsApp.
Los comentarios y el nombre del método de la
clase no dejan mucho espacio para depositar allí nuestras dudas.
Observemos también el selector de exploits
para rootear el dispositivo.
Si esta es la última versión del sistema RCS
para Android no parece que tuvieran un exploit de vanguardia para la versión 5.
El juego de exploits llega hasta 4.4.
Dejando aparte la conciencia, hemos de
reconocer que se trata de una obra de
ingeniería destacable. Aun ha de esconder bastantes secretos y como estamos
viendo a medida que el tiempo pasa se irán descubriendo nuevas curiosidades.
Acabamos aquí con Android, hay más que decir
pero no todo puede ser dicho al mismo tiempo.
Il dolce
Trend Micro halló un rootkit
que permitía al sistema RCS persistir en el sistema. El rootkit se adhería a la
BIOS para protegerse de un borrado, formateo o eliminación parcial de
componentes.
Esto ha sido una pequeña muestra de lo que se
ha ido observando estos últimos días. Repetimos, el volumen es magnífico, tanto en cantidad como en excepcionalidad. Seguirán
surgiendo nuevos descubrimientos y nuevos datos sobre lo ya descubierto.
Más información:
una-al-dia (10/07/2015)
Actualización para Adobe Flash Player
http://unaaldia.hispasec.com/2015/07/actualizacion-para-adobe-flash-player.html
una-al-dia (13/07/2015) Nuevos
0day de Adobe Flash Player relacionados con el Hacking Team
http://unaaldia.hispasec.com/2015/07/nuevos-0day-de-adobe-flash-player.html
Leaked Flash zero-day likely to be exploited by
attackers
http://www.symantec.com/connect/blogs/leaked-flash-zero-day-likely-be-exploited-attackers
Security Advisory for Adobe Flash Player
https://helpx.adobe.com/security/products/flash-player/apsa15-04.html
Security updates available for Adobe Flash
Player
https://helpx.adobe.com/security/products/flash-player/apsb15-16.html
Security Advisory for Adobe Flash Player
https://helpx.adobe.com/security/products/flash-player/apsa15-03.html
CVE-2015-5122 - Second Adobe Flash Zero-Day in
HackingTeam Leak
https://www.fireeye.com/blog/threat-research/2015/07/cve-2015-5122_-_seco.html
Another Zero-Day Vulnerability Arises from
Hacking Team Data Leak
http://blog.trendmicro.com/trendlabs-security-intelligence/another-zero-day-vulnerability-arises-from-hacking-team-data-leak/
New Zero-Day Vulnerability (CVE-2015-5123) in
Adobe Flash Emerges from Hacking Team Leak
http://blog.trendmicro.com/trendlabs-security-intelligence/new-zero-day-vulnerability-cve-2015-5123-in-adobe-flash-emerges-from-hacking-team-leak/
una-al-dia (08/07/2015) Sombreros
verdes y 400 gigas de caramelos
http://unaaldia.hispasec.com/2015/07/sombreros-verdes-y-400-gigas-de.html
una-al-dia (14/07/2015) Microsoft
publica 14 boletines de seguridad
http://unaaldia.hispasec.com/2015/07/microsoft-publica-14-boletines-de.html
Microsoft Security Bulletin MS15-077 -
Important
Vulnerability in ATM Font Driver Could Allow
Elevation of Privilege (3077657)
https://technet.microsoft.com/en-us/library/security/MS15-077
Microsoft Security Bulletin MS15-065 - Critical
Security Update for Internet Explorer (3076321)
https://technet.microsoft.com/en-us/library/security/MS15-065
una-al-dia (06/07/2015) Koodous:
inteligencia colectiva para proteger tu Android
http://unaaldia.hispasec.com/2015/07/koodous-inteligencia-colectiva-para.html
Hacking Team Uses UEFI BIOS Rootkit to Keep RCS
9 Agent in Target Systems
http://blog.trendmicro.com/trendlabs-security-intelligence/hacking-team-uses-uefi-bios-rootkit-to-keep-rcs-9-agent-in-target-systems/
David García
dgarcia@hispasec.com
Twitter: @dgn1729