En principio, podría modificar el firmware del SoC (Sistema en el chip) (por ejemplo, el simple cargador de arranque que inicialmente le dice al chip que lea la tarjeta SD para obtener la imagen del firmware real para iniciar) cargando un nuevo firmware malicioso. que persistiría después de reemplazar la tarjeta SD.
Sin embargo, no estoy seguro de si el firmware SoC de Raspberry Pi es (fácilmente) modificable. Creo que es preprogramado de fábrica y puede que no sea regrabable ; aunque un atacante sofisticado siempre podría reemplazar el chip con uno malicioso programado de fábrica.
Hay un firmware en el SOC que no podrá tocar. Está preprogramado desde la fábrica. Y sí, se requiere para iniciar, y esta es la razón por la que la primera partición tiene que ser FAT porque así se diseña el firmware. Solo necesita una partición FAT lo suficientemente grande como para contener un cargador de arranque de algún tipo.
También de enlace :
Las tarjetas no incluyen almacenamiento NAND o NOR: todo está en la tarjeta SD, que tiene una partición FAT32 con firmware de GPU y una imagen de kernel, y una partición EXT2 con rootfs.
Actualmente no estamos usando un gestor de arranque, en realidad arrancamos a través de la GPU, que
Contiene un núcleo RISC propietario (arquitectura extravagante). La GPU monta la tarjeta SD, carga el firmware de la GPU y muestra la pantalla / video / 3d, carga una imagen del núcleo, reinicia el host de la tarjeta SD e inicia el ARM.
Podría reemplazar la imagen del kernel con una imagen del gestor de arranque, y eso funcionaría bien.
Lo que implica que hay un código simple en el SoC que en el arranque se monta la tarjeta SD y se lee el firmware, que en principio podría reemplazarse con un código malicioso. Aunque esto puede requerir reemplazar físicamente el chip con algo creado en una fábrica de chips que inicialmente cargó código malicioso.