Si
seguimos las noticias relacionadas con la ciberseguridad, aunque no
estemos en el mundillo, seguramente habremos escuchado que se han
producido ciberataques como secuestros de equipos o ataques de
denegación de servicio. Da igual cuando leas esto puesto que con el
tiempo se han ido incrementando los ataques a diversos objetivos como
los equipos de empresas, secuestro de cuentas y perfiles en redes
sociales de individuos o la toma de control de dispositivos del
Internet de las cosas. Estos ataques son muy graves y van dirigidos a
diferentes objetivos e infraestructuras, incluido instituciones. Y el
origen de estos ataques son las APT, pero ¿Qué son las APT’s?
¿Cómo actúan las APT’s? ¿Qué Amenazas representan las APT’s?
Y en un escenario real ¿Cuál puede ser la APT más grave o
peligrosa?
Antes
de que te vuelvas loco buscando toda esta información, vamos por
partes. El término APT viene de Advanced Persitent Threat, o Amenaza
Persistente Avanzada en castellano. Hace referencia a Malware o
software malicioso muy perjudicial y complejo. Además, el término
APT a veces también se usa para referirse a los grupos de
cibercriminales que desarrollan y utilizan estos malwares.
¿Qué
características tienen estos malwares o Amenazas persistentes
avanzadas?
Las
APT se caracterizan por:
Son
amenazas avanzadas, porque tienen grandes capacidades para explotar
una o varias vulnerabilidades en el objetivo.
Son
persistentes, porque hacen uso de varias formas de infección para
garantizar que dure lo máximo posible.
Tenemos
que tener claro que este tipo de amenaza busca causar realmente un
daño en su víctima. Normalmente los grupos que desarrollan estas
amenazas son organizaciones de ciberdelicuentes o grupos delictivos,
empresas o estados/Nación. Estas Organizaciones cuentan con
suficientes recursos y motivación para tener éxito en sus ataques.
Podemos encontrar información de los diferentes grupos de
cibercriminales o APT’s en la página web de MITRE:
https://attack.mitre.org/groups/
En
esta página web encontraras:
Descripciones
de grupos de amenazas: Información detallada sobre grupos
específicos de amenazas, sus alias conocidos, motivaciones,
objetivos y víctimas típicas.
Tácticas
y técnicas utilizadas: Una lista de tácticas, técnicas y
procedimientos empleados por estos grupos de amenazas para
comprometer sistemas, moverse lateralmente, evadir la detección,
entre otras actividades.
Herramientas
y malware asociados: Información sobre herramientas y malware
específicos utilizados por cada grupo de amenazas, junto con
detalles sobre su funcionalidad y métodos de operación.
Referencias
y enlaces de interés: Vínculos a informes de investigaciones,
análisis de incidentes y otros recursos relacionados que
profundizan en los detalles de las actividades y tácticas de estos
grupos de amenazas.
Las
APT’s no atacan a cualquiera. Estos grupos atacan a personas de las
que pueden obtener información privilegiada. Por lo que generalmente
están dirigidas a una víctima concreta. Los grupos que las crean
tiene información precisa del objetivo al que van dirigidas para
poder hacerle el máximo daño y/o poder penetrar en el mayor número
de equipos. Estos grupos estudian a su victima muy concienzudamente,
recopilan la máxima información sobre ellos, utilizan técnicas
avanzadas de OSINT (Inteligencia de fuentes abiertas) para encontrar
todo tipo de datos del objetivo como sus e-mails publicados en
Internet, números de teléfono, analizan sus perfiles en redes
sociales para encontrar servicios a los que están subscritos, el
banco en el que tienen sus ahorros, que hábitos y comportamiento
tiene en la red, utilizan técnicas de ingeniería social para
suponer o averiguar contraseñas. En resumen, saben perfectamente
quién es su víctima. Esto requiere tiempo y trabajo por lo que
estos equipos están formados por más de una persona, y están
especializados en varios campos de la ingeniería informática.
Pueden
hacer usos de botnet, es decir, conjuntos de dispositivos que han
sido comprometidos y actúan como zombies. Estos dispositivos quedan
bajo el control de cibercriminales y pueden realizar todo tipo de
acciones maliciosas, como mandar cientos o miles de peticiones a la
vez a un servidor o servicio en concreto para tumbarlo y que quede
inaccesible (lo que se conoce como un ataque de denegación de
servicio distribuido). Hay cantidad de equipos que se pueden
comprometer en el Internet de las cosas, como Cámaras Ip,
termostatos, asistentes inteligentes por voz, televisores
inteligentes, móviles, tabletas. Cualquier dispositivo inteligente
es susceptible de ser corrompido.
Otra
característica relacionada con los servidores de control que
utilizan los ciberdelicuentes para controlar todos esos dispositivos
zombies es que estos servidores suelen estar en países con malas
relaciones diplomáticas con los países de sus objetivos, para que
no pueda haber una cooperación internacional. Esto pueden lograrlo
estando físicamente en ese país, o mediante una conexión remota,
como por ejemplo una conexión VPN.
Estas
amenazas son realmente sigilosas. Sus creadores pasan tiempo
diseñándolas y gastan recursos económicos comprando o descubriendo
procesos de ejecución que son desconocidos y por lo tanto no han
podido ser parcheados (lo que se conoce como vulnerabilidades
Zero-day). De hecho tu máquina puede estar infectada y no saberlo
nunca. Y eso es realmente peligroso. La infección puede provocarse
por varios métodos, como un correo electrónico, una web que se hace
pasar por otra (esto se conoce como phising personalizado), o por una
descarga a través de un servidor web comprometido. Incluso puede
infectarse al introducir un dispositivo USB corrupto.
Algunos
ejemplos de APT’s son Lojax, Stuxnet, MirageFox o DeepPanda.
El
grupo cibercriminal Fancy Bear (también conocido como APT28) es un
grupo de ciberespionaje ruso al que se le atribuye el desarrollo del
malware LoJax.
Lojax
es un malware que sobrevive al formateo del disco duro y la posterior
reinstalación del sistema operativo. Es
un tipo de rootkit que se implanta en la BIOS,
es decir, un programa que accede a los niveles administrativos de la
raíz de un ordenador permaneciendo oculto. LoJax fue el primer
rootkit detectado que atacaba directamente a UEFI. UEFI es la
evolución de la tradicional BIOS. El propósito de la BIOS, y de
UEFI, es arrancar el ordenador y se almacena en una memoria flash
situada en la placa base, lo que significa que es independiente del
sistema operativo. LoJax funciona haciendo uso de una vulnerabilidad
de un software antirrobo que viene instalado en la UEFI de muchos
portátiles denominado Computrace Lojack. El malware sobrescribe al
software original en la BIOS ocultando el código malicioso desde el
sistema operativo Windows. De esta manera, la raíz más básica de
un sistema informático, como es parte del sistema de arranque, pasa
a estar bajo control total del cibercriminal.
Otra
conocida APT, famosa porque consiguió atrasar el plan nuclear de
Irán, es Stuxnet. Este malware se identificó en 2010 y estaba
dirigido a las centrifugadoras de Uranio de plantas nucleares de
Irán. Hacia fallar las centrifugadoras sin una causa aparente
durante algunos meses. Este comportamiento malicioso se repetía de
manera aleatoria en el tiempo, saboteando los esfuerzos Iraníes de
desarrollar un plan nuclear. Stuxnet fue un malware muy preciso ya
que fue dirigido, actuó de forma silenciosa durante bastante tiempo
y era muy complejo. En este caso la infección comenzó con una
memoria USB conectada a una máquina. Después el malware explotaba
varios Zero-day y provocaba el comportamiento errático en el
software de las centrifugadoras.
Otra
APT algo más reciente es la creada por el grupo conocido como APT15
o también conocidos como Vixen Panda. Este grupo es conocido por sus
trabajos de ciberespionaje contra empresas y organizaciones de
diversos países diferentes, dirigidas a diferentes sectores como la
industria petrolera, industria militar y otro tipo de empresas. Su
metodología de acción es aprovechar el software ya disponibles
instalados en la computadora para operar mediante credenciales que
hayan robado por otros métodos, primero para recopilar información
desde dentro y después para adaptar su malware específicamente al
objetivo. Se cree que Vixen Panda esta vinculado al Gobierno chino.
Uno
de los malware más populares utilizado por este equipo es MirageFox,
una versión mejorada de otro malware que se conoció en 2012,
conocida como Mirage. La razón por la que se ha denominado MirageFox
en lugar de solo Mirage, es porque al analizar el código se ha
encontrado comentarios nombrando el código como MirageFox. La forma
de distribuir este malware es producir un archivo binario legitimo de
algún programa real, como puede ser el instalador de un antivirus.
Una vez ejecutado el binario el malware se ejecuta secuestrando algún
archivo DLL de la máquina para cargar el DLL correctamente en un
proceso de aspecto legítimo. Un archivo
DLL consiste en un tipo de archivo comúnmente utilizado en Windows
con instrucciones diversas a las que los programas y aplicaciones
pueden recurrir para llevar a cabo determinadas funciones. Este
malware no deja evidencia de ningún tipo de persistencia. El resto
de MirageFox funciona de manera similar a Mirage, el primer malware
del que sea reciclado su código. Primero recopila información sobre
la computadora, como el nombre de usuario, información de la CPU, la
arquitectura, etc. Luego envía esta información al servidor de
control, abre una puerta trasera y espera que le lleguen las ordenes
desde el servidor de control. Además puede modificar archivos,
iniciar procesos, terminarse a sí mismo y otras funcionalidades. La
persistencia podría producirse por el envío de un comando desde el
servidor de Control a la computadora infectada. Algunas
características particulares son que el servidor de control se
encuentra ubicado en la red local de la organización o empresa lo
que significa que primeramente APT15 se infiltra mediante unas
credenciales robadas, como puede ser la clave privada de una conexión
VPN. MirageFox es otro claro ejemplo de que las APT realizan una gran
cantidad de trabajo de reconocimiento y se hacen a medida para un
objetivo en concreto.
Otro
ejemplo es Deep Panda. La principal característica de esta APT es la
fuga de información. El malware se ejecuta sencillamente en la
memoria RAM, para no dejar rastro alguno en el PC, y no ser detectada
en un análisis forense posterior. Deep Panda intenta habilitar
alguna forma de control remoto y después crea un archivo comprimido
con datos relevantes para luego ex-filtrarlos. Se cree que Deep Panda
estaba creado por alguna organización China con el objetivo de robar
información privilegiada.
Estos
son algunos ejemplos de lo que son las APT’s y lo que pueden hacer.
Pero, puestos a imaginar, ¿cuál puede ser la peor APT que se pueda
desarrollar? Para contestar esta pregunta debemos conocer un poco la
arquitectura de los PC actuales. Desde 2005 empezó a introducirse en
los chipset de las placas Intel un componente llamado Intel
Management Engine. Y en los chipset de los microprocesadores AMD otro
componente llamado AMD Platform Security Processor.
¿Qué
son estos componentes y qué funciones tienen?
En
principio estos componentes nacieron para darle solución a problemas
de la tecnología de la información. Como por ejemplo la
administración a distancia de servidores sin tener que estar
físicamente junto al ordenador. Esto facilita mucho la tarea de un
administrador de sistemas, y más si imaginamos los grandes centros
de datos con cientos de servidores trabajando a la vez. No es
rentable estar presente en cada uno de esos PC’s.
Con
el tiempo y gradualmente estos componentes fueron añadiendo
capacidades aparentemente no administrativas y actualmente están
presentes en todos los ordenadores de escritorio, portátiles y
servidores. Están compuestos de código propietario (es decir, su
código fuente no está disponible), lo que significa que lo que
podemos conocer acerca de ello, es por investigadores que se han
encargado de hacer ingeniería inversa del código, han estado
experimentando con el Intel Management Engine y han estudiando su
comportamiento. Además de haber leído, previamente, toda la
documentación publicada acerca de él.
Estos
investigadores ponen de manifiesto que el Intel Management Engine
disponen de un bus de comunicación seguro con el que puede
comunicarse con otros dispositivos. Incluye un motor criptográfico,
una memoria ROM y RAM interna, controladores de memoria y un motor de
acceso de memoria directa para acceder a la memoria principal del
sistema operativo que esta corriendo el PC. También puede reservar
una región de la memoria RAM externa para suplementar la reducida
memoria RAM que tienen. Además cuentan con acceso a la red.
Se
puede decir que el Intel Management Engine y el AMD Platform Security
Processor es un PC dentro de otro PC. Su programa de arranque, que se
encuentra almacenado en la BIOS, carga un firmware desde la memoria
flash del PC. Este firmware está firmado con una clave
criptográfica. Si el firmware que se carga no está firmado por una
clave del proveedor específica, como puede ser Intel en el caso del
Management Engine, la ROM de arranque no cargará ni ejecutará el
firmware y el núcleo se detendrá, por lo que el PC no arrancará o
se apagará al rato de encenderse. Esto significa que el código que
controla el Intel Management Engine no puede ser sustituido.
El
Management Engine cuenta además con la tecnología AMT que soporta
un servidor web y un código de aplicación que permite a los
usuarios remotos encender, apagar, ver información y administrar el
PC. Se puede usar de forma remota incluso cuando el PC está apagado
(a través de Wake-on-Lan). El tráfico de red se cifra mediante
bibliotecas SSL / TLS. Por lo que las vulnerabilidades en esta
biblioteca pueden llevar a graves vulnerabilidades en el Intel
Management Engine.
Hoy
en día, estos módulos administrativos controlan todo lo que hay en
la RAM, todo lo que se muestra en pantalla y puede encender o apagar
la PC si está en estado de hibernación. Tienen acceso al control
del ventilador, acceso al sistema anti robo, puede leer todos los
archivos abiertos, saltarse el cortafuegos local y examinar todas las
aplicaciones en ejecución. En resumen, controla toda la placa base.
Si
hacemos un análisis racional de todas las particularidades que
presenta, es una ventaja que todas esas características se ejecuten
en una CPU separada y aislada del sistema operativo principal, porque
se tiene un sistema más seguro, evitando que un simple virus se
pueda hacer con el control de todo el chipset. Pero tiene algunos
aspectos oscuros. Por ejemplo, en el caso de Intel Management Engine,
el “interruptor de apagado” de las versiones más modernas de
este modulo, conocido como HAP bit no estaba documentado y tuvo que
ser encontrado por ingeniería inversa. Los chipset más antiguos
contaban con un interruptor conocido como AltMeDisable bit.
Sabiendo
todas estas características, es un dispositivo demasiado jugoso para
todos los grandes cibercriminales y como es normal, también un
objeto de estudio para los investigadores en ciberseguridad. Con
todas las capacidades de las que dispone, podría convertirse en un
arma de ciberespionaje excepcional.
A
lo largo del tiempo se han encontrado varias vulnerabilidades en el
IME. El 1 de mayo de 2017, Intel confirmó varias vulnerabilidades de
elevación de privilegios en todos los procesadores desarrollados
desde 2008 hasta 2017. En su mayoría el método de explotación de
estas vulnerabilidades era de forma local, por lo que hacía falta
acceso físico al dispositivo. Por lo que aunque tuviera una alta
peligrosidad, la necesidad de acceso al equipo disminuía la gravedad
de la vulnerabilidad. Pero existía una vulnerabilidad más grave, la
CVE-2017-5689, que se encontraba en la tecnología AMT para
computadoras de propósito empresarial. La Tecnología AMT se ejecuta
en IME. AMT ofrece a los propietarios de dispositivos la
administración remota de su computadora, como encenderla o apagarla
y reinstalar el sistema operativo. Esta vulnerabilidad era de extrema
gravedad porque podía ser explotada en remoto y podía permitir
acceso y control total del equipo. Todas estas vulnerabilidades
fueron parcheadas.
Algo
a considerar es que en las revelaciones de Snowden de 2013, no
figuraba ningún exploit para el Intel Management Engine o el AMD
Platform Security Processor. Y más recientemente, en el verano de
2016, un grupo de cibercriminales llamado ShadowBrokers, robó varias
de las ciberarmas que tenía la NSA y se filtró a la prensa el
catálogo y características de estas. En ellas tampoco aparecía
ninguna que hiciera uso de algún exploit para el IME.
Sabemos
que las organizaciones de cibercriminales cuentan con muchos recursos
y en alguna de ellas podría haber algún genio de la ingeniería
inversa, que pudiera encontrar alguna vulnerabilidad y desarrollar
algún exploit Zero-day remoto. Esto sería la puerta trasera
definitiva, una verdadera pesadilla del ciberespionaje ya que tendría
acceso completo al PC y podría hacer a su antojo lo que quisiera.
Evidentemente
los ingenieros de Intel y AMD conocen esto y las pocas
vulnerabilidades que han sido conocidas siempre han sido corregidas.