Caratteristiche e differenze tra BIOS e UEFI in informatica

Caratteristiche e differenze tra BIOS e UEFI in informatica

Il BIOS, Basic Input/Output System, è composto da un insieme di routine software contenenti tutte le funzionalità per controllare la componentistica installata in un sistema. All’avvio del sistema esso è il primo componente ad essere avviato e si occupa dell’inizializzazione e del controllo di tutte le componenti hardware installate sulla macchina, dopo aver effettuato questa operazione si occupa di preparare tutto il necessario affinchè il sistema operativo possa avviarsi correttamente per poi avviarlo. Per fare in modo che il suo contenuto sia persistente ma che sia anche possibile eseguire aggiornamenti di questa componente, essa è posizionata all’interno di memorie riprogrammabili non volatili.

Caratteristiche e differenze tra BIOS e UEFI in informatica

Con il passare degli anni l’evoluzione tecnologica ha portato a richiedere funzionalità per le quali i BIOS non erano progettati (come ad esempio gestione remota della sicurezza, monitoring della potenza e della temperatura del sistema, ecc..). I BIOS, come si può facilmente intuire, hanno preso vita molteplici anni fa e quindi non erano progettati ed implementati per essere estesi. Per questi motivi nel 2003 Intel ha deciso di presentare una nuova tecnologia chiamata Unified Extensible Firmware Interface (UEFI), che si poneva come obbiettivo quello di sostituire gradualmente i vecchi BIOS. Una miglioria che questo sistema ha apportato è la risoluzione al problema riguardante le limitazioni di memorizzazione che il BIOS imponeva, quest’ultimo utilizzava il Master Boot Record (MBR) per salvare tutti i dati mentre UEFI utilizza la GUID Partition Table. La differenza sostanziale tra questi due elementi risiede nella loro capacità di memorizzazione, il Master Boot Record utilizza entry dalla dimensione di 32-bit limitando il numero di partizioni totali a 4 mentre il metodo adottato dall’UEFI utilizza entry estese a 64-bit offrendo quindi una capacità di memorizzazione più ampia. Un’ulteriore caratteristica apportarta da UEFI è la capacità di ridurre notevolmente i tempi di caricamento del sistema operativo, questo incremento della velocità è dovuto al fatto che UEFI è stato progettato per essere modulare e, durante l’avvio del sistema, carica solo i moduli strettamente neccessari al corretto funzionamento del sistema senza preoccuparsi di tutto ciò che reputa inutile.

Un importante funzionalità apportata dall’UEFI è sicuramente il Secure Boot, un meccanismo che nasce con l’obbiettivo di garantire l’integrità della piattaforma e controllare tutti gli stati del processo di avvio del sistema. Durante la prima fase di boot del sistema esso è il primo elemento ad essere avviato ed è composto da tre elementi chiave.

  1. Verifica delle immagini – Una delle principali innovazioni che l’UEFI ha portato è la possibilità di utilizzare la crittografia per la verifica delle immagini che esso contiene attraverso un’infrastruttura a chiave pubblica. Le chiavi utilizzate sono memorizzate all’interno del meccanismo di Secure Boot che seguono una determinata gerarchia.
  2. Variabili di autenticazione UEFI – Esse fornisconono un mezzo per garantire l’integrità delle diverse variabili che potranno essere memorizzate
    all’interno dei diversi database. Bisogna notare che le variabili di autenticazione vengono aggiunti in testa dei dati di autenticazione che verranno utilizzati per garantire l’integrità.
  3. Aggiornamento sicuro dell’UEFI – Questa componente è usata per verificare l’aggiornamento delle immagini dei firmware. L’intero processo di verifica avviene mediante l’utilizzo di firme digitali.

Essendo il primo elemento ad essere avviato esso è in grado di controllare tutti i binari in suo possesso controllando l’esistenza dei relativi valori di hash all’interno del database dbx. Se la ricerca ha esisto positivo allora viene generato un errore ed il relativo binario non verrà caricato altrimenti, il sistema, effettuerà un’ulteriore ricerca nel database contenente i valori di hash leciti. Se quest’ultima ricerca termina senza che il valore sia stato trovato allora il binario non potrà essere caricato e sarà comunque generato un messaggio di errore mentre, se il valore di hash viene trovato all’interno di questo database, il binario potrà essere caricato senza problemi. Il meccanismo appena descritto offre sicuramente maggiore sicurezza rispetto al normale funzionamento del BIOS ma ricerche come hanno comunque dimostrato come sia possibile, attraverso meccanismi non banali, riuscire ad infettare sistemi con il Secure Boot abilitato.

Precedente Significato e caratteristiche del monitoraggio in informatica Successivo Caratteristiche di un sistema Publish-Subscribe in informatica

Lascia un commento

*