Cuando el malware rompe la máquina

========================================================
   dmesg — cuando el malware rompe la maquina
   firmware · arranque · controladores · alimentacion
========================================================
Esquema de una placa base con cuatro zonas atacadas por malware destructivo Dibujo simplificado de una placa base de ordenador. Se señalan cuatro zonas numeradas: 1, el chip de memoria flash con el firmware de arranque BIOS o UEFI; 2, los conectores de almacenamiento por donde se llega al sector de arranque del disco; 3, las ranuras de expansión y los controladores, con firmware propio; y 4, los reguladores de tensión y el control térmico. Cada zona se explica en detalle en la lista siguiente. El dibujo ofrece dos clases de enlace: los círculos numerados bajan a la explicación de su zona, y los recuadros a trazos marcados con un signo más abren el interior ampliado de ese componente, en su propia página. [+] [+] [+] [+] [+] 1 2 3 4
Zonas de la placa base atacadas por malware con intención de estropear el equipo. La numeración se corresponde con la de los apartados siguientes.

El contorno de cada componente codifica su peldaño en la escalera de persistencia; el relleno rojo del chip de firmware sigue marcando, aparte, el único daño irreversible.

Casi todo el malware de este museo persigue datos. Un punado se propuso estropear el aparato, y para eso tuvo que bajar hasta donde el software toca el hardware. Aqui estan esas zonas, y la diferencia entre perder informacion, quedarse sin arrancar y romper algo de verdad.

## [1] el firmware de arranque (bios/uefi)

> componente: chip de memoria flash spi, soldado a la placa
> dano: FISICO

Un chip diminuto que guarda el primer código que ejecuta el equipo al encenderse, antes incluso de que exista un sistema operativo. Es lo que reconoce la memoria, los discos y el teclado, y decide desde dónde arrancar.

Es el punto más profundo al que puede llegar el software: se ejecuta antes que cualquier antivirus y sobrevive a formatear el disco, o a cambiarlo entero. Si se corrompe, la máquina no llega ni a encender la pantalla.

CIH (1998), conocido como Chernobyl, es el ejemplo canónico: además de arrasar el disco, intentaba sobrescribir el firmware. Solo funcionaba en placas con chipset Intel 430TX y similares, que permitían reescribir el chip por software sin mover un puente físico; en ellas, el ordenador quedaba muerto y había que reprogramar el chip fuera de la placa.

El daño intencionado es raro hoy, pero la zona sigue siendo codiciada por su persistencia: LoJax (2018) fue el primer rootkit UEFI encontrado en uso real, y buscaba sobrevivir a la reinstalación, no romper nada.

> en el catalogo: [cih]

## [2] el sector de arranque del disco

> componente: conectores de almacenamiento (sata/m.2) y el disco que cuelga de ellos
> dano: EQUIPO INUTILIZADO

Los primeros sectores del disco (MBR o VBR) contienen el pequeño programa que carga el sistema operativo y el mapa de dónde empieza cada partición.

Son unos pocos kilobytes que gobiernan el acceso a todo lo demás. Sobrescribirlos cuesta un instante y deja el equipo aparentemente muerto: enciende, pero no encuentra nada que arrancar.

Es la zona más castigada de la historia del malware. Michelangelo (1991) sobrescribía los primeros sectores cada 6 de marzo. Shamoon (2012) borró el arranque y los datos de unas 30.000 estaciones de Saudi Aramco. Petya (2016) y NotPetya (2017) cifraban la tabla maestra de ficheros y sustituían el arranque por su propia pantalla de rescate.

Conviene no exagerar el alcance: aquí el hardware queda intacto. Un equipo así se recupera reescribiendo el sector de arranque, y los datos, si hay copia de seguridad. Lo que se destruye es información y tiempo, no silicio.

## [3] el firmware de los periféricos

> componente: ranuras de expansión, controladores de disco y de red
> dano: FISICO

Un ordenador moderno tiene decenas de procesadores además del principal: el disco, la tarjeta de red o la gráfica ejecutan su propio firmware, con el que el sistema operativo no habla directamente.

Ese código es invisible para el sistema y para las herramientas de análisis: no aparece en ningún fichero. Quien lo controla puede leer o alterar todo lo que pase por esa pieza, y no hay formateo que lo quite.

En 2015, Kaspersky documentó implantes capaces de reprogramar el firmware de discos duros de más de una docena de fabricantes, atribuidos al grupo Equation. No buscaban romper el disco, sino esconderse donde nadie mira.

En la práctica, un componente así comprometido se sustituye: verificar o restaurar su firmware suele estar fuera del alcance del usuario.

## [4] la alimentación y la refrigeración

> componente: reguladores de tensión (vrm), conectores de ventilador y batería
> dano: FISICO

La circuitería que ajusta el voltaje que llega al procesador y el control térmico que evita que el equipo se cueza a sí mismo.

Aquí el daño no es un borrado, sino desgaste: forzar la máquina al máximo de forma sostenida es una forma lenta pero real de estropear el aparato, y no requiere ningún fallo exótico, solo mantenerla trabajando.

El caso mejor documentado es de un teléfono, no de un PC: Loapi (2017), un troyano para Android con un módulo de minería, mantenía el dispositivo al límite hasta que la batería se deformó por el calor en apenas dos días de prueba en laboratorio.

Los equipos actuales se protegen solos: si la temperatura sube, el procesador reduce su frecuencia o apaga el sistema. Esa salvaguarda es de hardware, y es la razón de que hoy un minero degrade el equipo en lugar de fundirlo.

## mas alla del ordenador

> la planta industrial

Stuxnet (2010) es el caso que cambió la conversación: reprogramaba controladores lógicos Siemens S7 para variar la velocidad de giro de las centrifugadoras de enriquecimiento de uranio de Natanz, forzándolas fuera de su régimen seguro hasta romperlas. Mientras tanto, reproducía a los operadores grabaciones de lecturas normales, de modo que los paneles no mostraban nada raro. Es la demostración de que un programa puede destruir maquinaria física, y de que el aislamiento de la red no basta por sí solo: entró en una instalación sin conexión a Internet.

> en el catalogo: [stuxnet]

> los aparatos conectados

Los routers, cámaras y grabadores domésticos guardan su sistema en una memoria flash pequeña y sin apenas protecciones. BrickerBot (2017) recorría Internet buscando los mismos dispositivos con credenciales de fábrica que usaba Mirai, pero en lugar de reclutarlos para una red de bots, corrompía su almacenamiento y los dejaba inservibles: un ataque de denegación de servicio permanente. Su autor sostenía que hacía un favor retirándolos de circulación; para el dueño, el aparato simplemente había muerto.

> en el catalogo: [mirai]

## de que cuelga cada pieza

El dibujo de la placa dice donde esta cada componente. Lo que no dice es como se comunican, y ahi esta la explicacion de una pregunta que la sala ha ido dejando pendiente: por que el sistema operativo no ve el firmware.

De qué cuelga cada pieza: los buses del equipo Diagrama de bloques. El procesador se conecta directamente a la memoria por un bus rápido y al chipset por otro. Del chipset cuelgan, por buses distintos y más lentos, el chip de firmware, el disco y las ranuras de expansión. Dos detalles importan: el chip de firmware está en una rama propia y el procesador solo lo lee al arrancar, que es la razón de que el sistema operativo no lo vea; y las tarjetas de expansión alcanzan la memoria sin pasar por el procesador. Los nombres de cada bus se repiten en la lista que sigue al dibujo.
De qué cuelga cada pieza. El dibujo de arriba dice dónde está cada componente; este dice cómo se comunica, que es lo que explica qué puede ver el sistema operativo y qué no.
  • Buses rápidos — el procesador habla directamente con la memoria y con el chipset.
  • El bus del firmware (a rayas) — lento, en una rama propia y leído casi solo al arrancar. Por eso el sistema operativo no ve ahí ningún fichero: no hay nada que listar, hay un chip al otro lado de un bus.
  • Disco y tarjetas — cuelgan del chipset, no del procesador.
  • Acceso directo a memoria (punteado) — una tarjeta lee y escribe la memoria sin pasar por el procesador. Es el privilegio que hace peligrosa a una tarjeta comprometida.

La respuesta es la topologia. El chip de firmware no cuelga del procesador sino del chipset, por un bus lento y aparte, y el procesador solo lo lee al arrancar. Para el sistema operativo no hay ahi un fichero que listar: hay un chip al otro lado de un bus, y hablarle exige pedirselo al chipset con las ordenes adecuadas. Esa distancia es la misma que hace que un implante de firmware sea invisible para un antivirus.

## la escalera de persistencia

El eje que de verdad ordena esta sala no es donde ataca el malware, sino a que profundidad se instala. Y la razon es el orden de arranque: cuanto mas abajo esta algo, antes se ejecuta, y lo que se ejecuta antes puede esconderse de todo lo que viene despues. Por eso bajar un peldano no es solo esconderse mejor: es sobrevivir a un remedio mas.

  1. memoria se quita con: apagar el equipo.

    Solo el proceso en ejecución; nada escrito en disco.

    Es el peldaño de las técnicas «sin fichero»: no persisten a propósito, para no dejar nada que un antivirus pueda encontrar.

  2. ficheros del sistema se quita con: borrar el fichero.

    Ejecutables infectados, tareas programadas, claves de arranque del registro.

    Es donde vive la inmensa mayoría del malware, y también donde el antivirus juega en casa: son ficheros, y un fichero se puede mirar.

  3. sector de arranque se quita con: reescribir el arranque.

    MBR o VBR del disco, fuera de cualquier sistema de ficheros.

    Primer peldaño que se ejecuta ANTES del sistema operativo, así que también antes de cualquier defensa que el sistema traiga.

  4. firmware de un periférico se quita con: sustituir la pieza.

    La memoria del propio disco, de la tarjeta de red o de la gráfica.

    El sistema operativo no ve ese código: no es un fichero de ninguna parte. Los implantes de disco que Kaspersky atribuyó al grupo Equation (2015) viven aquí.

  5. firmware de la placa se quita con: reprogramar el chip.

    El chip flash SPI con la BIOS o la UEFI.

    El punto más profundo que alcanza el software. CIH (1998) llegó aquí para destruir; LoJax (2018), para sobrevivir a la reinstalación.

  6. el aparato se quita con: ninguno: se sustituye.

    El componente físico: silicio, batería, mecánica.

    Aquí ya no se habla de persistencia sino de avería: no queda nada que borrar porque el daño no es un programa instalado, es una pieza rota.

## que sobrevive a que

La escalera anterior, puesta a prueba contra los remedios habituales. Cada celda responde a una sola pregunta: ¿sobrevive a este remedio, aplicado por si solo? Conviene no leerla como una escalera acumulativa, porque los remedios no se contienen unos a otros: sustituir el disco no reprograma la BIOS, y reprogramar la BIOS no sustituye el disco. De ahi que el resultado sea una diagonal y no un escalon, y de ahi la leccion: cada profundidad necesita su remedio, y el mas drastico aplicado en el sitio equivocado no sirve de nada.

Supervivencia de cada profundidad frente a cada remedio aplicado de forma aislada.
profundidad borrar el fichero formatear la partición reinstalar el sistema sustituir el disco reprogramar la bios
virus de fichero dentro de programas del disco muere muere muere muere 1 sobrevive
sector de arranque mbr del disco sobrevive sobrevive 2 muere 3 muere sobrevive
firmware del disco memoria de la propia unidad sobrevive sobrevive sobrevive muere sobrevive
firmware de la placa chip flash spi (bios/uefi) sobrevive sobrevive sobrevive sobrevive muere

sigue vivo  ·  eliminado

  1. Muere con el disco viejo, pero vuelve si se restaura una copia de seguridad hecha cuando ya estaba infectada: la reinfección desde el respaldo es un clásico.
  2. La celda más contraintuitiva de la tabla, y la razón de que merezca la pena dibujarla. Formatear actúa sobre una PARTICIÓN; el MBR es el primer sector del DISCO, por delante de la primera partición, así que no se toca. Un virus alojado en el VBR —el primer sector de la partición— sí desaparecería.
  3. Normalmente sí, porque el instalador escribe su propio cargador de arranque encima. Deja de ser cierto si el sistema se instala en otra unidad y se conserva el arranque anterior.

Dos advertencias para no forzar la tabla mas de lo que dice. Habla de donde sigue vivo el programa, no de lo que se ha perdido: un ransomware muere al formatear, pero los ficheros cifrados no vuelven por eso. Y el desgaste de la zona [4] no aparece aqui porque no es persistencia: no hay nada instalado que borrar, hay una pieza gastada.

## tres grados de dano

  • Pérdida de datos: Se borra o se cifra información. El equipo funciona; lo que falta es lo que había dentro. Se arregla con: copias de seguridad.
  • Equipo inutilizado: La máquina no arranca y parece rota, pero todos sus componentes están sanos. Se arregla con: reescribir el arranque y reinstalar.
  • Daño físico: Un componente queda inservible o se degrada de forma permanente. Se arregla con: reprogramar el chip o sustituir la pieza.

De los 65 especimenes publicados en el catalogo, solo dos llegaron al tercer grado: CIH, con el firmware de un ordenador domestico, y Stuxnet, con las centrifugadoras de una planta de enriquecimiento. Romper hardware exige conocer un modelo concreto de chip o de maquina, y eso limita el alcance justo cuando el atacante suele buscar lo contrario.

> fin del informe_