CHIPSEC è probabilmente lo strumento più completo per analizzare la sicurezza del firmware fino ad oggi.
La prima risposta ha fornito risorse per rilevare se INTEL-SA-00086 ti influenza o meno. C'è un altro, il CHIPSEC framework, che esegue la scansione del BIOS / UEFI per vari problemi di sicurezza e lo segnala a voi. Viene frequentemente aggiornato in risposta a nuove informazioni. Dalla loro pagina Github:
CHIPSEC is a framework for analyzing the security of PC platforms including hardware, system firmware (BIOS/UEFI), and platform components. It includes a security test suite, tools for accessing various low level interfaces, and forensic capabilities. It can be run on Windows, Linux, Mac OS X and UEFI shell.
È in grado di fornire informazioni su varie funzionalità del firmware e se è configurato per resistere alla modifica dal software. Esistono molti modi per sovrascrivere il firmware con accesso privilegiato e il firmware deve bloccarsi correttamente. Anche la mancanza di un particolare può comportare un firmware che può essere modificato in fase di runtime. Può anche fornire dettagli su vulnerabilità specifiche e su problemi più blandi come se il buffer della tastiera contenga sequenze di tasti inserite nel BIOS, che potrebbero rivelare la password del BIOS.
Si noti che l'output di CHIPSEC può sembrare piuttosto arcano a volte. È progettato per essere utilizzato come framework da ricercatori e fornitori di firmware , quindi non entra nei dettagli sulle implicazioni di vari problemi riscontrati. Il manuale fornisce ulteriori dettagli sullo scopo di ciascun modulo e questa pagina fornisce informazioni su alcuni dei moduli e vulnerabilità più comuni. Puoi anche espandere la sua funzionalità scrivendo moduli personalizzati. È un quadro, dopo tutto.
Esempio di output dal modulo common.bios_wp
:
[+] imported chipsec.modules.common.bios_wp
[x][ =======================================================================
[x][ Module: BIOS Region Write Protection
[x][ =======================================================================
BIOS Control (BDF 0:31:0 + 0xDC) = 0x2A
[05] SMM_BWP = 1 (SMM BIOS Write Protection)
[04] TSS = 0 (Top Swap Status)
[01] BLE = 1 (BIOS Lock Enable)
[00] BIOSWE = 0 (BIOS Write Enable)
[+] BIOS region write protection is enabled (writes restricted to SMM)
[*] BIOS Region: Base = 0x00500000, Limit = 0x00FFFFFF
SPI Protected Ranges
------------------------------------------------------------
PRx (offset) | Value | Base | Limit | WP? | RP?
------------------------------------------------------------
PR0 (74) | 00000000 | 00000000 | 00000000 | 0 | 0
PR1 (78) | 8FFF0F40 | 00F40000 | 00FFF000 | 1 | 0
PR2 (7C) | 8EDF0EB1 | 00EB1000 | 00EDF000 | 1 | 0
PR3 (80) | 8EB00EB0 | 00EB0000 | 00EB0000 | 1 | 0
PR4 (84) | 8EAF0C00 | 00C00000 | 00EAF000 | 1 | 0
[!] SPI protected ranges write-protect parts of BIOS region (other parts of BIOS can be modified)
[+] PASSED: BIOS is write protected