Infrastructure
ROM : Read-Only Memory, en français mémoire morte. « La mémoire qu'on ne peut que lire, sauf dans la plupart des cas », par analogie avec le marbre des monuments aux morts, gravé pour l'éternité jusqu'à la prochaine rénovation municipale.
Sens strict : Mémoire dont le contenu est fixé à la fabrication et conservé sans alimentation. Par extension, le terme désigne aujourd'hui des mémoires non volatiles réinscriptibles (EEPROM, mémoire flash) qui contiennent du firmware : le nom est resté, l'immuabilité est partie.
ROM d'option : Une carte d'extension PCI Express (Peripheral Component Interconnect Express), par exemple une carte réseau ou graphique, peut embarquer une ROM d'option : du code que le firmware de la carte mère, BIOS (Basic Input/Output System) ou UEFI (Unified Extensible Firmware Interface), exécute au démarrage, avant le système d'exploitation, notamment pour le démarrage par réseau en PXE.
Risque : Ce code s'exécute avec les privilèges du firmware et échappe aux outils de sécurité du système. En 2014, l'attaque Thunderstrike de Trammell Hudson utilisait la ROM d'option d'un adaptateur Thunderbolt pour réécrire le firmware d'un Mac. Avec UEFI Secure Boot, les ROM d'option doivent être signées, ce qui protège à condition que la vérification soit active.
Ce qui arrive si on s'en passe
Ignorer les ROM d'option et le firmware des cartes, c'est laisser s'exécuter avant le système d'exploitation du code que ni l'antivirus ni l'EDR ne voient. Une carte compromise ou malveillante peut implanter une persistance qui survit à la réinstallation complète du système et au remplacement du disque. Sans démarrage sécurisé actif et sans mesure dans le TPM, rien ne signale l'anomalie, ce qui est très confortable pour tout le monde sauf pour le propriétaire de la machine.
Explication de la marmotte
La ROM est une mémoire qui garde ses données sans électricité et qui sert à stocker les petits programmes de démarrage d'un appareil. Certaines cartes branchées dans un ordinateur, comme une carte réseau, ont leur propre ROM avec un programme qui se lance au démarrage, avant Windows ou Linux. Si ce programme est piégé, il agit avant toutes les protections habituelles. C'est pour cela que les ordinateurs modernes vérifient la signature de ces programmes avant de les lancer.
Où ce terme est utilisé
- Comment sécuriser firmware UEFI, réseau et BMC (1 occurrence)
