Vedo due diversi set di certificati per i siti web di Google quando sono al lavoro e quando sono a casa

8

Vedo due diversi set di certificati per i siti web di Google quando sono al lavoro e quando sono a casa.

Voglio dire se salvi i certificati (in firefox, fai clic sul blocco "Google.com" a sinistra di https nella barra degli indirizzi e seleziona "ulteriori informazioni" - > sicurezza - > visualizza i dettagli del certificato - & gt ; esportazione) sia a casa che al lavoro sono diversi. (Sto solo confrontandoli usando diff work.cert home.cert).

L'ho notato quando ho iniziato a utilizzare il plug-in FireFox "Convergence" ( http://convergence.io/ )

Va bene?

    
posta Ali 06.09.2011 - 20:35
fonte

6 risposte

7

Ci possono essere una serie di ragioni per questo. Senza le informazioni di entrambe le catene di certificati, è impossibile dare una risposta definitiva.

Diversi set di server

Google ha molti cluster di server distribuiti in tutto il mondo. La richiesta viene gestita da un cluster vicino a te in base alla topologia della rete. È possibile che si finisca in un diverso cluster di server a seconda del proprio e del fornitore di servizi Internet della società. Google potrebbe utilizzare chiavi diverse per diversi cluster.

link

È probabile che la tua azienda utilizzi un server proxy che annusa il traffico https. Poiché https è crittografato e dispone di misure speciali per impedire attacchi man in the middle , il proxy il server deve falsificare il certificato.

Una normale connessione proxy https funziona in questo modo:

  1. il browser dice al server proxy: "Voglio una connessione a basso livello per www.google.com:443"
  2. il server proxy si connette a www.google.com:443 e inoltra ciecamente tutti i pacchetti dal browser a google e viceversa.

Un proxy https dedicato invece fa questo:

  1. il browser dice al server proxy: "Voglio una connessione a basso livello per www.google.com:443"
  2. il server proxy genera una coppia di chiavi per www.google.com:443
  3. il server proxy firma il certificato con la chiave privata di una CA locale.
  4. il server proxy mostra questo certificato al browser
  5. il browser controllerà il certificato. Normalmente si lamenterebbe, ma è stato detto dall'amministratore in anticipo che la CA proxy è affidabile.
  6. il browser invia la richiesta http per una pagina.
  7. il proxy legge le richieste al server, apre una connessione sicura a www.google.com e richiede la pagina appropriata
  8. il server proxy riceve la risposta, la decrittografa, la controlla e la crittografa con la chiave di sessione derivata dalla chiave privata simulata generata nel passaggio 2.
  9. il browser riceve la risposta, la decrittografa ed è felice.

Il passaggio fondamentale che interrompe SSL è che l'amministratore ha configurato il browser per accettare la CA proxy utilizzata per firmare le chiavi false.

    
risposta data 06.09.2011 - 21:00
fonte
6

Questa è una pratica standard. È stato detto che la pratica migliore è quella di non condividere certificati tra server, quindi vedrai diversi certificati da server in posizioni diverse. Da Verisign :

Can I secure multiple servers with a single certificate? Sharing certificates on multiple servers increases risk of exposure. Auditing becomes more complex, reducing accountability and control. If a private key becomes compromised, it can be difficult to trace and all servers sharing that certificate are at risk. Because sharing certificates degrades security, the VeriSign certificate subscriber agreement prohibits customers from using a certificate on more than one physical server or device at a time, unless the customer has purchased additional server licenses. VeriSign’s licensing policy allows licensed certificates to be shared in the following configurations: redundant server backups, server load balancing, and SSL accelerators. See About SSL Certificate Licensing.

Ad esempio, se eseguo nslookup www.google.com su computer diversi, troverò diversi indirizzi IP diversi per diversi server di google. Uno darà un certificato SSL con un'impronta digitale SHA256:

SHA-256: F6 41 C3 6C FE F4 9B C0 71 35 9E CF 88 EE D9 31 7B 73 8B 59 89 41 6A D4 01 72 0C 0A 4E 2E 63 52

mentre un altro darà:

SHA-256: 63 80 03 73 A7 74 72 E0 3E 7E 56 4E A2 17 2F C2 5C 37 D5 71 BD 05 10 1C B4 3C 14 00 04 92 0F 64

Entrambi sono "token oggetto incorporato: CA Equifax Secure - > Google Internet Authority - > * .google.com" e sembrano validi.

    
risposta data 06.09.2011 - 20:49
fonte
4

@Hendrik ha coperto bene le due situazioni più probabili. Potrei aggiungere che sarei sospettoso se vedessi diverse CA pubbliche alla radice della catena di fiducia per lo stesso sito a casa vs. al lavoro. È del tutto possibile che il tuo gruppo IT stia utilizzando un proxy di intercettazione, ma sarei sorpreso se vedessi, per esempio, Equifax dal lavoro e Verisign da casa. Forse altri possono commentare su quanto sia comune utilizzare diverse CA per gli stessi indirizzi nel mondo reale, ma personalmente, non l'ho mai incontrato.

    
risposta data 07.09.2011 - 05:21
fonte
4

C'è un attacco MITM (per quanto ne sappiamo, ancora in corso) su utenti Internet (per la maggior parte iraniani) che utilizzano certificati fraudolenti firmati dalla CA di DigiNotar. Se una delle autorità di certificazione dice "DigiNotar" o "PKIoverheid", considera la connessione non protetta. Questo è un evento corrente, guarda ad es. questo: link

    
risposta data 07.09.2011 - 09:39
fonte
2

È normale, previsto e in realtà consigliato che i grandi siti usino diversi certificati. Google è enorme e ha molti server in tutto il mondo; DNS e routing sono fatti in modo tale che, in media, le tue richieste a www.google.com vadano al server più vicino, dove "vicino" si intende nella topologia della rete, che può differire da considerazioni geografiche.

Ogni server con il nome www.google.com deve essere in grado di utilizzare un certificato con il suo nome (o qualcosa che corrisponde al suo nome, come *.google.com ), e il server deve avere accesso alla chiave privata corrispondente. Tuttavia, se due server geograficamente distanti utilizzano entrambi la stessa chiave privata, allora la chiave privata deve necessariamente aver viaggiato tra loro o da una fonte comune a un certo punto. Più una chiave privata viene duplicata e viaggia, meno "privata" può essere.

È quindi meglio, per quanto riguarda la sicurezza, che ogni server genera la propria coppia di chiavi privata / pubblica e ottiene un certificato specifico per il server. Dal punto di vista di un cliente, è possibile osservare diversi di questi certificati, in particolare se si "sposta" (nel mondo di rete, il tuo ufficio di lavoro e la tua casa possono essere abbastanza distanti l'uno dall'altro).

Altre situazioni che implicano necessariamente modifiche ai certificati sono i rinnovi. I certificati hanno una durata limitata, con una data di "fine validità"; di solito vivono da uno a tre anni. Il rinnovo può riutilizzare o meno la stessa chiave pubblica, ma in ogni caso il nuovo certificato sarà diverso da quello vecchio, se non altro nella data di scadenza. X.509 è progettato per supportare tali aggiornamenti senza problemi. In realtà è progettato per supportare i rinnovi ogni 5 minuti, che è un completo overkill; Convergence cerca di vivere in quel "margine di overkill" (cioè rileva certificati di pesce in virtù del fatto che sono apparentemente rinnovati o cambiati troppo spesso).

    
risposta data 12.08.2013 - 19:24
fonte
1

Stai usando Firefox? In tal caso, vai in Strumenti- > Opzioni- > Avanzate- > e scegli Visualizza certificati. Elimina o diffidalo. Credo che se si vuole essere "sicuri" si dovrebbe fare in modo che la catena del certificato segua lo stesso percorso quando si guarda dallo stesso computer. Quando l'ho fatto da Firefox, la catena di certificati era la stessa presentata da Chrome.

    
risposta data 23.03.2015 - 02:00
fonte

Leggi altre domande sui tag