Hoy la noticia que más me ha sorprendido ha sido la que parece primera aparición en escena de un
bootkit para los terminales Android, lo que abre la puerta a un panorama mucho más peligroso para los terminales con este sistema operativo y el
malware, ya que si no se controlan bien en las tiendas de apps, esta moda puede ser más que peligrosamente aprovechada por
apps maliciosas del tipo de la
linterna molona o el
juego de Android que vende tus WhatsApps que quieran generar dinero en la industria del
fraude online.
Tras la proliferación del malware instalado a nivel de kernel como drivers, los fabricantes de sistemas operativos decidieron prohibir la instalación de drivers a nivel de kernel que no estuvieran firmados digitalmente por una entidad autorizada.
 |
Figura 1: Error de intento de carga de driver no firmado en un Windows |
Eso hizo que los creadores de
malware crearan los
bootkits, un software que funciona como un sistema operativo reducido a su mínima expresión con la única misión de buscar el
kernel del sistema operativo, parchearlo para anular la verificación de la firma digital del los
drivers, e instalar el
rootkit a nivel de
kernel con tranquilidad, antes de arrancar definitivamente el sistema operativo de la víctima - ya infectado -. Aquí os publiqué un ejemplo en el que
Blackngel - autor del libro de
Linux Exploiting -hacía algo
algo similar con un sistema operativo, pero con el objetivo de hacer un ataque de fuerza bruta.
Para conseguir hacer todo ese proceso, los
bootkits necesitan ponerse antes en el proceso de arranque, así que modifican el famoso
MBR (Master Boot Record) del disco duro del sistema para conseguir el control total de la máquina de la víctima. Como contramedida a los
bootkits, la industria decidió apostar por el firmado digital del
Master Boot Record y la comprobación del mismo desde el
firmware UEFI del equipo, lo que se llamó
SecureBoot y hace que antes de instalar un nuevo sistema operativo en un hardware sea necesario tenerlo firmado digitalmente por el fabricante - como
hizo Microsoft con el loader de Linux -.
Ahora
Dr. Web ha anunciado que ha descubierto un
malware, al que ha denominado
Android.Oldboot que se distribuye mayoritariamente en
China como un
bootkit. Para ello se aprovecha de
apps maliciosas que instalan el
bootkit, y en el siguiente reinicio se carga el
rootkit que toma control total del sistema.
 |
Figura 2: Android.Oldboot publicado por Dr. Web |
Esto en Android es especialmente complicado de controlar, ya que la dispersión de hardware hace que sea complicado asegurarse de que todos los terminales con Android tienen la protección contra la manipulación del proceso de arranque. Además, el proceso de cifrado de disco completo de Android es algo que se hace antes de que el sistema arranque, así que lo que hace el bootkit es cargarse en el inicio, pero después de que se haya descifrado el disco, por lo que no le afecta para nada si el terminal está cifrado o no.
 |
Figura 3: El SecureBoot Activado en un firmware de dispositivo |
Controlar el proceso de arranque en terminales Android es algo que se persigue desde hace tiempo, pero muchos terminales vienen con el Secure Boot deshabilitado y otros muchos usuarios lo deshabilitan de forma manual para instalar determinados mods de firmware en sus dispositivos.
Una fiesta para controlar todos que puede dar mucho juego al mundo del
e-crime, que podría portar sus famosos
ransonwares a un secuestro total del terminal, obligando a pagar a la gente si quiere volver a recuperar el control de su dispositivo, o podría también crear
troyanos para espiar Android que sean más difíciles de detectar y tengan más poder dentro de todo el terminal o evolucionar los
Rogue AV de Android a sistemas mucho más peligrosos.
Saludos Malignos!