In linea di principio, è possibile modificare il firmware del SoC (System on Chip) (ad esempio, il semplice bootloader che inizialmente dice al chip di leggere la scheda SD per ottenere l'immagine del firmware reale da avviare) caricando un nuovo firmware dannoso che persisterebbe dopo aver sostituito la scheda SD.
Tuttavia, non sono sicuro che il firmware del SoC di Raspberry Pi sia (facilmente) modificabile. Credo che sia pre-programmato dalla fabbrica e potrebbe non essere riscrivibile ; anche se un attaccante sofisticato potrebbe sempre sostituire il chip con uno programmato maliziosamente in fabbrica.
There is firmware on the SOC that you will not be able to touch. It is pre-programed from the factory. And yes it is required to boot, and this is why the first partition has to be FAT because this is how the firmware is designed. You only need a FAT partition big enough to hold a bootloader of some type.
Anche dal link :
The boards do not include NAND or NOR storage - everything is on the SD card, which has a FAT32 partition with GPU firmware and a kernel image, and an EXT2 partition with the rootfs.
We're not currently using a bootloader - we actually boot via the GPU, which
contains a proprietary RISC core (wacky architecture). The GPU mounts the SD card, loads GPU firmware and brings up display/video/3d, loads a kernel image, resets the SD card host and starts the ARM.
You could replace the kernel image with a bootloader image, and that would work fine.
Il che implica che nel SoC è presente un codice semplice che al momento del caricamento monta la scheda SD e legge il firmware, che in linea di principio potrebbe essere sostituito con codice dannoso. Anche se questo potrebbe richiedere la sostituzione fisica del chip con qualcosa creato in un produttore di chip che inizialmente ha caricato il codice dannoso.