El procedimiento que ha seguido Guillaume Delugré de la firma Sogeti ESEC, ha sido analizar, mediante herramientas de dominio público y de código abierto, el firmware de una tarjeta de red Ethernet con un controlador bastante común hace unos años en el mercado, el Broadcom Ethernet NetExtreme PCI, ya que se vendieron más de 75 millones de unidades antes de dar el testigo a la generación NetLink de la misma marca.

Además del propio software del controlador, Guillaume tuvo que realizar el mismo proceso con el formato de la memoria EEPROM donde se guarda el código. Tras ello, y viendo que con lo hecho había adquirido toda una serie de conocimientos, se puso manos a la obra y desarrolló él mismo un firmware prototipo, que permitía modificar el comportamiento de la tarjeta de red según qué condiciones.

Lo mejor de este trabajo es que, desde el punto de vista del atacante, se puede programar un software del tipo rootkit que, al estar integrado dentro de la propia tarjeta de red, no hay traza alguna que haga sospechar al sistema operativo o al usuario que algo maligno habita en su sistema, ya que no hay procesos que lo identifiquen.

Con ello, se pueden espiar comunicaciones de forma totalmente silenciosa, o corromper la memoria RAM del sistema.

Para conseguirlo es necesario que la tarjeta de red tenga acceso a instrucciones DMA (Direct Memory Access) a través del bus PCI para procesar las tramas de forma independiente al procesador principal del ordenador y, así, un hipotético atacante que tuviese conexión remota a la tarjeta modificada podría, por tanto, tener acceso al sistema operativo.

En su artículo se puede ver una demostración donde se observa que, modificando un parámetro de los paquetes enviados al destino objetivo del ataque (el tiempo de vida, TTL), el sistema operativo no se entera de que se ha establecido una comunicación, incluso cuando la interfaz está deshabilitada.

De todos modos, no parece que tengamos que alarmarnos, ya que en principio sería necesario un acceso físico para flashear la memoria de la tarjeta de red o, al menos, para alterar su comportamiento de forma temporal modificando la propia RAM de la tarjeta. Además, la tarjeta hackeada ya tiene sus años.

 

Fuente: bandaancha