Apenas hace un mes Andrey Konovalov (xairy.io) dió una charla en Seul sobre cómo "destripó" un ThinkPad X230 para llegar a poder actualizar el firmware de la cámara web a través de USB (la cámara web X230 está conectada a través de USB internamente) para agregar la capacidad de controlar arbitrariamente el LED. De esa manera, un malware podría grabar videos a través de la cámara web sin la indicación del LED y buena cuenta de ello lo tenéis en este repo de Github: https://github.com/xairy/lights-out
La cámara web que se utiliza en ThinkPad X230 (y en algunas otras computadoras portátiles de la misma época) se basa en el controlador de cámara USB Ricoh R5U8710. Este controlador almacena una parte de su firmware, la parte SROM, en el chip flash SPI ubicado en la placa de la cámara web. El controlador también permite actualizar el contenido del chip SPI a través de USB.
- Cargar dinámicamente un implante de segunda etapa dentro de la memoria del controlador de la cámara y ejecutarlo (originalmente utilizado para fines de ingeniería inversa);
- Controlar directamente el LED de la cámara web.
- srom.py — lee y escribe la parte SROM del firmware de una cámara web basada en Ricoh R5U8710 a través de USB.
- patch_srom.py — aplica un parche a la imagen SROM de la cámara web FRU 63Y0248 (no de la cámara web X230 original) para agregar el implante universal.
- fetch.py — recupera el contenido del espacio de memoria IRAM, XDATA o CODE a través de USB mediante un implante de segunda etapa que se carga dinámicamente a través del implante universal;
- led.py — enciende o apaga el LED de la cámara web sobrescribiendo el valor en la dirección 0x80 en XDATA a través del implante universal.
Comentarios
Publicar un comentario