Perché i browser consentono le CA radice personalizzate?

25

Al mio lavoro tutti i browser hanno installato una CA radice personalizzata, che consente loro di curiosare su tutto il traffico https mentre gli utenti hanno la falsa impressione di sfogliare una pagina https sicura.

Perché i browser consentono una facile sconfitta di https e non avvisano l'utente al riguardo?

EDIT: Sulla base delle risposte / commenti mi rendo conto che forse stavo erroneamente sottolineando la parte sbagliata della mia confusione. Capisco che ci siano alcune esigenze legittime di voler modificare l'elenco delle CA, ciò che non capisco è il motivo per cui non si desidera avvisare l'utente se è stata apportata una tale modifica. Non avvisa l'utente di sconfiggere il punto della casella verde accanto all'indirizzo? Devo davvero passare attraverso più clic, e quindi forse fare una ricerca (compromessa) per capire se la CA radice è vera o no per qualsiasi computer che non possiedo e / o se lascio che qualcun altro tocchi il mio computer?

    
posta eddi 26.07.2018 - 16:24
fonte

7 risposte

1

Non c'è davvero una buona ragione per consentire ai browser di consentirlo e dovrebbero impedirlo. Lasciatemi indirizzare le giustificazioni errate una per una:

  1. Sviluppo web. Non hai bisogno di una CA root per firmare i certificati solo per un singolo dominio o un piccolo insieme limitato di domini per i quali stai facendo lo sviluppo. Invece il browser potrebbe consentire l'aggiunta di certificati CA validi solo per i domini particolari e avvisare l'utente nella barra degli URL quando tale certificato viene utilizzato, piuttosto che consentire l'aggiunta di certificati CA che possono firmare per arbitrario domini.

  2. Enterprise e AV MITM. Queste sono solo idee sbagliate per ragioni che puoi trovare discusse altrove. Implementa l'AV sugli endpoint, non tramite MITM. Il controllo delle risorse tramite MITM semplicemente non funziona se non contro utenti davvero ingenui. Se hai dati così sensibili che pensi di aver bisogno del controllo degli asset tramite MITM, probabilmente hai bisogno di sistemi con airgap senza accesso a Internet.

  3. "Se il browser non lo consentiva, gli amministratori che desiderano aggiungere CA radice semplicemente modificheranno il browser." Sì, è sempre tecnicamente possibile, ma i venditori di browser hanno l'opportunità di renderlo legalmente difficile o impossibile semplicemente condizionando l'uso del marchio del browser per non alterare la CA UX. Lo sto sostenendo da molto tempo. Se i browser facessero questo, gli utenti saprebbero non appena vedranno "Firefox" o "Chrome" su un sistema che si accosteranno al fatto che non accetteranno certificati fraudolenti per consentire a qualcuno MITM di finché si fidano che la parte che ha creato il sistema è rispettosa della legge . Questa è un'ipotesi ragionevolmente ragionevole in contesti come luoghi di lavoro, scuole, biblioteche, ecc. Ed è testabile, quindi se qualcuno infrange le regole, è facile uscirne e lasciare che il venditore di browser intraprenda un'azione legale.

risposta data 27.07.2018 - 19:07
fonte
52

Come sottolineato nei commenti e nelle risposte, ci sono un sacco di motivi legittimi per cui si vorrebbe aggiungere una CA al trust store del proprio browser e i meccanismi per farlo richiedono l'accesso di amministratore alla macchina / browser.

Stai insinuando un modello di fiducia in cui non ritieni che il tuo amministratore (o il tuo passato) sia affidabile e desideri che il browser faccia una distinzione visiva tra un certificato che è pubblicamente attendibile (ossia emesso da una CA in Mozilla elenco di pubblico dominio) e uno di proprietà privata perché è stato aggiunto esplicitamente all'archivio di fiducia del browser. Forse il solito verde con un simbolo di avvertimento per i privati di fiducia?

Buona idea! Risolverà anche il mio problema di aver bisogno di due copie di firefox installate: una per testare i prodotti che necessitano di installazione di certs e una per navigare in internet. Dovresti vedere se Firefox ha già un miglioramento per questo, e in caso contrario, suggerilo:)

    
risposta data 26.07.2018 - 20:07
fonte
30

Quello che vuoi è che il browser difenda l'utente contro "attacco" eseguito dall'amministratore locale.

In tale scenario, la difesa è impossibile. L'amministratore "malevolo" può sempre sostituire il tuo legittimo Firefox con un impostore che ha compilato usando le sue CA, che mostreranno il lucchetto verde. Quando sei al lavoro e usi la macchina di qualcuno (la società in questo caso), sei al 100% in balia del proprietario della macchina. Se la società desidera guardarti di nascosto, può sempre installare keylogger e vedere le tue password prima ancora che raggiungano un browser sicuro.

La casella verde non indica la sicurezza contro la minaccia locale, indica la sicurezza dallo snooping remoto. In questo caso, indica una connessione sicura all'ispettore TSL. Indica che i tuoi colleghi nella stessa LAN non possono spiare le tue password, quindi l'icona verde. Cosa succede dopo che l'ispettore è responsabile del tuo amministratore di rete e il browser non può sapere se utilizza effettivamente HTTP.

Quello che puoi fare, come utente, è visualizzare il certificato ed esaminarne il percorso di certificazione. Il tuo browser non può decidere se il certificato emesso da DigiNotar è "migliore" di quello pubblicato da EvilCorp (che potrebbe essere il tuo datore di lavoro). I certificati vengono costantemente modificati e anche le CA vengono cambiate. Il browser non può decidere se una CA è più affidabile dell'otwer. Solo tu puoi decidere chi è l'emittente e se puoi fidarti di loro - e con che tipo di informazioni. Dovresti usare la macchina solo per attività legate al lavoro, quindi tecnicamente non stai facendo nulla che non vuoi che EvilCorp veda.

    
risposta data 26.07.2018 - 20:55
fonte
9
  1. Perché l'elenco ufficiale cambia nel tempo.
  2. Perché le aziende hanno la necessità legittima di includere le CA "interne".
  3. Perché le imprese hanno un legittimo interesse a essere in grado di man-in-the-middle per motivi di sicurezza, conformità o risorse umane.
  4. Perché sviluppatori e tester hanno un legittimo bisogno di Man-in-the-Middle.

Preferiresti fidarti StartCom oggi? Questo è ciò che otterresti con modifiche non banali.

    
risposta data 26.07.2018 - 16:50
fonte
6

Uno dei motivi principali per consentire la CA radice personalizzata è per lo sviluppatore web. Dev e test build utilizzano molto spesso un certificato interno (principalmente per costo e facilità di creazione). Il fatto di non consentire l'aggiunta della CA di root potrebbe comportare (più) uno stato diverso tra l'istanza di sviluppo / sviluppo e quella di produzione che potrebbe generare errori di correzione difficili.

Inoltre, il proxy aziendale, in quanto azienda è (nella maggior parte delle legislazioni) responsabile di ciò che fai con la sua internet, spesso usa l'uomo nel mezzo, che mentre è eticamente discutibile, è per lo più legale e atteso.

Un altro motivo per non codificare la CA di root è consentire di rimuovere quello che non ti fidi più (forse sono sotto il controllo di un governo di cui non ti fidi, forse hanno recentemente perso la chiave, ecc.) indipendentemente dal tuo considerazione del browser nei loro confronti.

    
risposta data 26.07.2018 - 16:29
fonte
1

In generale, l'aggiunta di nuovi certificati di origine richiede l'accesso a livello di amministratore o root. Pertanto, non possono essere installati senza il consenso del proprietario del computer (a meno che non venga utilizzato un exploit).

Il problema sembra essere il malinteso su chi possiede il computer. Se il computer è stato rilasciato dal tuo datore di lavoro e ha accesso come root, non è il "tuo" computer. È loro e ti stanno permettendo di usarlo. Non dovresti avere alcuna aspettativa di privacy usando quel sistema. Probabilmente ha detto qualcosa in tal senso nel contratto del tuo dipendente. (I dettagli su questo possono variare a seconda delle leggi locali.)

    
risposta data 27.07.2018 - 00:03
fonte
0

Se il tuo computer fa parte di una rete aziendale, allora ha senso aggiungere CA radice personalizzate per i siti web interni che utilizzano HTTPS o vari pacchetti di aggiornamento o app interne che dai ai tuoi clienti /=.

    
risposta data 27.07.2018 - 10:03
fonte