I roll out sfalsati delle patch di sicurezza sono nocivi?

63

Molti dispositivi Android, tra cui la linea Google Nexus, ora ricevono patch di sicurezza mensili tramite aggiornamenti OTA, accompagnati da Bollettini sulla sicurezza per Android . Tuttavia, questi aggiornamenti vengono spesso rilasciati in ciò che è noto come "scaglioni sfalsati", in cui l'aggiornamento è disponibile per più dispositivi (dello stesso modello) nel tempo, invece di essere disponibili istantaneamente per tutti gli utenti.

Comprendo che per gli aggiornamenti delle funzionalità, i roll out graduali consentono di correggere errori o errori prima che tutti gli utenti ricevano il nuovo software. Tuttavia, per le patch di sicurezza, una release scaglionata non renderebbe molto più facile agli hacker di blackhat utilizzare le vulnerabilità ora pubbliche contro gli utenti i cui dispositivi non hanno ancora ricevuto l'OTA, anche se una patch per il loro modello di dispositivo è già disponibili?

Ad esempio, ho un telefono Google Nexus che dovrebbe essere tra i primi a ricevere tutti gli aggiornamenti Android. L'ultimo aggiornamento per la sicurezza di Android è stato rilasciato pubblicamente il 4 maggio 2016, insieme al suo codice sorgente; è già il 16 maggio 2016 e il mio dispositivo Nexus mi sta ancora dicendo che il mio "sistema è aggiornato", anche quando faccio clic sul pulsante "verifica aggiornamento". Ovviamente, posso scaricare manualmente le ultime immagini del firmware e farlo lampeggiare manualmente; ma gli aggiornamenti di sicurezza non dovrebbero essere resi disponibili a tutti i dispositivi dello stesso modello il più rapidamente possibile una volta resi pubblici?

Modifica: grazie per le risposte molto ponderate. Mentre questa domanda è destinata ad essere ampiamente applicabile a diversi dispositivi, la mia preoccupazione specifica è l'intenzionale "scaglionamento" verso dispositivi identici dello stesso modello, una volta che una patch è già stata sviluppata per quel modello specifico. Ad esempio, l'aggiornamento di sicurezza di maggio 2016 è stato rilasciato per Google Nexus 6P all'inizio del mese, ma a partire dal 16 maggio non tutti i dispositivi Nexus 6P hanno ricevuto l'aggiornamento OTA. Google rilascia patch di sicurezza per dispositivi Nexus ogni mese e ogni mese alcuni dispositivi li ricevono poche settimane più tardi rispetto ad altri dispositivi dello stesso modello.

    
posta tonytan 16.05.2016 - 06:39
fonte

3 risposte

56

Ottima domanda.

Sì, la tua comprensione è corretta, così come il tuo fondamento logico.

I rilanci in difficoltà per nuove funzionalità spesso hanno molto senso.

Raramente i roll out per le patch di sicurezza sono una buona idea. Come hai sottolineato, questo offre ancora più opportunità per sfruttare le vulnerabilità. Forse ancora più importante, le patch possono essere rapidamente decodificate per sviluppare exploit in modo rapido.

Microsoft pubblica spesso le proprie patch pubblicamente il secondo martedì del mese (e talvolta anche il quarto martedì). Questo è stato comunemente chiamato " Patch Tuesday ". C'è una ragione che chiamiamo il giorno successivo "Exploit Wednesday".

È spiacevole che una parte significativa dell'ecosistema Android non abbia imparato da questo fenomeno.

Aggiornamenti:
Diverse persone competenti hanno sottolineato il potenziale impatto sull'infrastruttura di Internet, compresi i timori di sovraccaricare l'intera Internet. Il volume del traffico internet è monumentale; le patch di sicurezza, anche quelle estremamente grandi, sono piccole gocce nel secchio. Microsoft rilascia grandi patch a centinaia di milioni di utenti nello stesso giorno ogni mese, e non hanno ancora "crash Internet". Netflix, YouTube e Twitch trasmettono video in streaming a milioni di persone ogni giorno e, anche con il loro traffico combinato, non hanno ancora "bloccato Internet".

D'altra parte, le patch Android sono prevalentemente (ma non esclusivamente) consegnate agli utenti wireless. Esistono soluzioni a qualsiasi problema potenziale :

  1. Fornire agli utenti una scelta su quando scaricare le patch. Questo offre numerosi vantaggi:
    • Non interrompe il flusso di lavoro dell'utente
    • Crea traffico sconcertante a causa dell'interazione umana e della variabilità delle decisioni
    • Permette all'utente di attendere fino a quando non sono connessi a un sistema con una larghezza di banda superiore (magari al lavoro, la loro università, a casa WiFi)
    • Consente all'utente, a proprio rischio, di attendere e vedere se altri segnalano problemi con le patch
  2. Quando si distribuiscono le patch in regioni specifiche note per avere un'infrastruttura limitata che potrebbe essere interessata, scaglionare le patch nel numero minimo di giorni per evitare l'infrastruttura di sovraccarico.

Riguardo a specificamente gli aggiornamenti di sicurezza di Google Nexus 6P non vengono rilasciati prontamente a tutti gli utenti, questa è semplicemente una scelta sbagliata di Google che non è nel migliore interesse dei loro clienti. Rispetto al volume enorme di traffico internet, quelle patch sono minuscole.

Inoltre, quel dispositivo è relativamente raro nell'ecosistema Android. Ciò supporta ulteriormente la dichiarazione secondo cui il rilascio di patch a tutti i clienti in una sola volta non danneggerebbe alcun fornitore di servizi Internet.

Anche la intera linea di prodotti Google Nexus comprende solo una piccola parte del mondo Android. Come linea di prodotti, tuttavia, ci potrebbe essere un piccolo impatto sull'infrastruttura in determinate regioni. In quanto tale, la seguente metodologia, combinata con le raccomandazioni illustrate sopra, minimizzerà l'impatto dell'infrastruttura massimizzando la distribuzione delle patch:

  1. Rilascia immediatamente le patch di exploit zero-day
  2. Rilascia aggiornamenti pianificati in giorni diversi ogni mese, un giorno diverso per ciascun prodotto
  3. Se un prodotto ha una quota di mercato significativa che potrebbe avere un impatto ragionevole sull'infrastruttura in una regione, scaglionare il roll out sul numero minimo di giorni richiesto per evitare il sovraccarico dell'infrastruttura solo in quella regione

Infine, secondo le sue dichiarazioni, sono trascorse più di due settimane da quando Google ha rilasciato inizialmente le patch per Google Nexus 6P. Questo è più che abbastanza tempo per sapere se le loro patch stanno causando il caos. Non ho trovato alcuna documentazione da parte di Google che riconosce o si scusa per un brutto gruppo di patch, né prove aneddotiche di problemi gravi.

Si potrebbe sostenere l'argomento secondo cui le patch scaglionanti in pochi giorni potrebbero essere ragionevoli per rilevare patch difettose e ridurre il carico di traffico. Ma lasciare i clienti senza patch per settimane è irragionevole, non necessario e non una politica efficace dal punto di vista della sicurezza delle informazioni.

In conclusione, sulla base delle affermazioni di cui sopra e sulla tua affermazione che Google non ha implementato le patch di sicurezza sul tuo dispositivo, la mia conclusione è che Google, non consegnando patch di sicurezza a tutti i clienti di Google Nexus 6P interessati, sta facendo un scarsa decisione e sta facendo un cattivo servizio ai propri clienti.

    
risposta data 16.05.2016 - 06:57
fonte
4

However, for security patches, wouldn't a staggered release make it much easier for blackhat hackers to utilize the now-public vulnerabilities against users whose devices have not yet received the OTA, even though a patch for their device model is already available?

Più facile di cosa ?, è la domanda importante. Sì, sarà più facile per l'hacker per alcuni giorni mentre l'aggiornamento viene eliminato. Ma sarà molto più difficile per l'hacker se poi se l'aggiornamento non è stato inviato affatto.

Una versione scaglionata mantiene la rete in movimento, i server in esecuzione e gli 1 e gli 0 che scorrono mentre tutti ricevono il loro aggiornamento. Se tutti i dispositivi Android là fuori tentassero di aggiornare tutto in una volta, si finirebbe con una quantità enorme di traffico che colpisce una piccola risorsa.

L'altra opzione è solo facendo un aggiornamento quando le persone "scansionano" per questo. Anche questo è orribile.

Quindi, mentre l'approccio scaglionato non è il migliore in assoluto, è il migliore disponibile per quanto riguarda le risorse.

Ricorda che per sfruttare questa finestra dovresti trovare un dispositivo tra il momento in cui la patch è stata rilasciata e quando (il dispositivo) ha ottenuto l'aggiornamento.

Ricorda anche che Android è Open Source. È molto più redditizio scrivere exploit che siano ancora fattibili, rispetto a quelli che conosci nella prossima versione (perché puoi vedere il codice).

Quindi, in estate:

  • Le correzioni non sono un segreto prima dell'inizio della sicurezza, comunque.
  • È meglio di nessun aggiornamento
  • È meglio che mandare in crash la rete mobile o aggiornare il server.
  • La finestra di opportunità è tale che solo poche persone dovrebbero essere effettuate, che non sono già un bersaglio attivo.
risposta data 16.05.2016 - 17:19
fonte
0

Non direi che sono un esperto in questo quindi il mio punto potrebbe non essere valido.

Ho letto velocemente Wikipedia

On modern mobile devices such as smartphones, an over-the-air update may refer simply to a software update that is distributed over Wi-Fi or mobile broadband using a function built into the operating system

Da questo preventivo possiamo notare che l'aggiornamento è distribuito tramite WiFi o banda larga mobile, che non sempre possono essere disponibili nello stesso momento, ad es. Se vivo in un posto dove non ci sono moduli WiFi, o ho una bassa potenza del segnale, allora c'è la possibilità che mi manchi il momento in cui vengono inviati gli aggiornamenti, e poi verrà scaricato dopo un po '.

Aggiornamenti eseguiti dal gestore integrato

Alcuni programmi di aggiornamento incorporati potrebbero avere impostazioni che consentono di personalizzare quando si desidera controllare e scaricare gli aggiornamenti OTA. Le tue impostazioni potrebbero essere impostate per controllare gli aggiornamenti quando il dispositivo è acceso, due volte al giorno, ogni giorno, ogni settimana, ogni mese o anche manualmente. Se alcuni dispositivi hanno impostazioni diverse, potrebbero ricevere gli aggiornamenti in momenti diversi.

Aggiornamenti eseguiti dal produttore

In questo caso gli aggiornamenti sono effettuati dal produttore del firmware, in questo caso google. Come già accennato potresti non essere in grado di ricevere informazioni sul fatto che è disponibile un nuovo aggiornamento, perché per es. batteria scarica, nessun segnale, ecc Gli aggiornamenti sono fatti quando l'utente non usa il suo telefono, quindi non impedisce all'utente di fare qualsiasi cosa lui / lei stia facendo in quel momento, quindi l'aggiornamento può essere fatto di notte.

Differenza hardware tra due gli stessi modelli di telefono

(NOTA: questo punto potrebbe non essere valido per alcuni dispositivi, incluso il tuo, in quanto alcuni dispositivi potrebbero essere esattamente gli stessi in prima e nella sua versione finale)

A volte anche lo stesso modello di dispositivo potrebbe essere leggermente diverso. Ad esempio all'inizio xbox 360 non aveva l'output HDMI, ma dopo un po 'è stato aggiunto e questo probabilmente ha richiesto anche la realizzazione di altri software. Anche se entrambi i tipi di xbox sono diversi, il nome del modello è sempre lo stesso. In questo modo alcuni dispositivi con lo stesso nome modello non saranno effettivamente gli stessi all'interno.

C'è una grande differenza tra ad es. Windows 10 a 64 bit e Android. La differenza è che la versione a 64 bit di Windows verrà eseguita su CPU che supporta long mode (modalità a 64 bit) e le istruzioni impostate in esso saranno le stesse in AMD e Intel. Il problema con Android è che diversi dispositivi possono avere processori diversi con set di istruzioni differenti, e questo fa sì che i telefoni possano persino richiedere un codice completamente diverso. Ciò sta causando che gli aggiornamenti per dispositivi diversi potrebbero verificarsi in tempi diversi.

Ad esempio, potresti avere alcune carte WiFi. Diciamo che hai installato il driver per uno di loro. È molto probabile che altre schede non funzionino con questo driver, quindi è necessario installare un driver diverso, che avrà sicuramente un codice diverso. Ora, se il produttore di queste schede WiFi troverà un errore in tutti questi driver, è possibile ripararlo solo uno per uno, oppure far lavorare molte persone contemporaneamente su versioni diverse. Tuttavia, anche se più persone stanno lavorando su più file allo stesso tempo, uno può finire la correzione prima dell'altro. In questo caso l'aggiornamento verrà rilasciato più rapidamente di quello dell'altro.

Si noti che il produttore potrebbe anche attendere la correzione di ogni versione del codice, quindi eseguire l'aggiornamento su tutti i dispositivi contemporaneamente, ma l'aggiornamento dei bug anche su un dispositivo riduce la quantità di persone vulnerabili a questo bug.

Nota anche che i driver in Windows sono installati da te, probabilmente usando .exe installer. In Android tutti questi driver sono integrati e, come ho detto prima, se hai bisogno di una versione diversa del driver per telefoni diversi, passerai un po 'di tempo a riparare tutti quei driver. Immagino che il modo in cui Google collabora con l'aggiornamento sia che stanno aggiornando i telefoni il più velocemente possibile dopo che hanno risolto il problema.

Hai anche accennato al fatto che, anche se fai clic manualmente sul pulsante "Cerca aggiornamenti", il tuo dispositivo dice che "il sistema è aggiornato". Ciò può essere causato dall'indisponibilità del servizio di aggiornamento, che è molto simile agli aggiornamenti eseguiti dal produttore.

    
risposta data 16.05.2016 - 23:29
fonte

Leggi altre domande sui tag