Quali sono i rischi di non applicare patch a un server o ad un hypervisor per Meltdown?

68

Si dice che la patch per Meltdown incorra in una penalità di prestazioni del 30%, il che sarebbe bello da evitare se possibile. Quindi questo diventa un problema di valutazione del rischio Security vs. Performance.

Sto cercando una regola empirica per valutare il rischio di non applicare patch a un server o un hypervisor.

Dalla lettura di i whitepapers , la mia comprensione è che devi assolutamente applicare la patch se la tua macchina:

  • è una workstation che esegue un codice potenzialmente maligno casuale, tra cui risulta , script java da siti web casuali,
  • è una VM potenzialmente in grado di eseguire codice dannoso (che diventa essenzialmente il primo caso).
  • è un hypervisor che esegue VM non affidabili accanto a VM sensibili (che diventa essenzialmente il primo caso),

La mia comprensione è che il rischio è (significativamente) inferiore nei seguenti casi:

  • server in esecuzione su hardware dedicato che esegue un insieme di processi strettamente controllati in una rete strettamente controllata (incluso l'utilizzo di un browser Web per visitare siti non attendibili)
  • VM che esegue un insieme di processi strettamente controllati su uno stack di virtualizzazione di altre VM strettamente controllate, il tutto in una rete strettamente controllata.

Questo suono logico o mi manca qualcosa?

AGGIORNAMENTO: i primi utilizzatori della patch in Azure non segnalano alcun rallentamento apprezzabile , quindi tutto ciò potrebbe essere discutibile.

Domanda correlata: Quali sono i rischi di non applicare patch a un sistema operativo della workstation per Meltdown?

    
posta Mike Ounsworth 04.01.2018 - 06:38
fonte

2 risposte

34

In sostanza, se esegui codice da fonti non attendibili su un computer che dispone di dati a cui non vuoi che il codice abbia accesso, devi applicare le patch. I computer desktop dovrebbero essere riparati perché hanno una sfortunata abitudine di incontrare codice non affidabile; i server di hosting condiviso, in particolare gli host dei server privati virtuali, devono essere corretti, poiché Meltdown consente a un utente di accedere a tutti i dati di altri utenti.

Tieni presente che l'attacco Meltdown non può essere utilizzato per uscire da una macchina virtuale . Puoi uscire da un contenitore, da una sandbox o da un sistema paravirtualizzato, ma eseguire l'attacco Meltdown in un sistema completamente virtualizzato ti dà accesso solo alla memoria del kernel della VM, non alla memoria del kernel dell'host.

    
risposta data 04.01.2018 - 08:49
fonte
11

La mia comprensione del problema è che si tratta di una fuga di informazioni locali, in cui locale significa che le informazioni sono trapelate "solo" per processi sullo stesso hardware fisico e non (direttamente) su sistemi remoti. E, si tratta di un attacco che si è dimostrato effettivamente utilizzabile nella pratica per estrarre informazioni sensibili, anche se attualmente non è banale da sfruttare. Ma quanto è facile l'exploit potrebbe cambiare rapidamente come visto da Rowhammer , che si è evoluto in breve tempo dal solo fatto di essere per lo più teorico problema a più affidabile sfruttando il problema utilizzando Javascript all'interno di un browser o per effettuare il root dei telefoni Android.

Pertanto, se esiste la possibilità che sul server venga eseguito un codice non attendibile, è necessario eseguire una patch. Ecco perché tutti i maggiori fornitori di servizi cloud hanno già aggiornato i loro sistemi o lo faranno a breve. Ed è per questo che le patch sono state incorporate così velocemente nel kernel di Linux, cosa molto insolita per le modifiche al sottosistema di memoria.

Si noti che il codice non affidabile potrebbe non essere eseguito solo se si hanno utenti non fidati sul sistema. Può anche accadere se si elaborano dati provenienti da una fonte non attendibile. Ad esempio, un utente malintenzionato potrebbe utilizzare le funzionalità esistenti del proprio server Web per caricare un'immagine che viene poi convertita sul server (ad esempio il ridimensionamento o simile). Data la cronologia dei bug nelle librerie grafiche, non sarebbe improbabile che questa conversazione potesse causare l'esecuzione di codice. E dando la natura del problema dubito che sandbox, docker o simili blocchino lo sfruttamento del bug.

    
risposta data 04.01.2018 - 09:48
fonte

Leggi altre domande sui tag