After some time the CA will have signed a couple of thousands more
certificates which will need to be synced and downloaded to the
browser/app using them. What is actually stopping a MiTM from
intercepting that?
Il fatto che il certificato del sito web sia firmato è ciò che impedisce un MITM.
Dimostrerò il mio punto con un semplice esempio. Non so se questo è esattamente come funziona il moderno SSL / TLS. Ma l'idea di base rimane la stessa.
Passaggio 1, browser di Mario
Bob ha una chiave pubblica di CA. La chiave pubblica CA è ben nota e non cambia mai, quindi è integrata nel browser / sistema operativo di Mario.
Passaggio 2, Alice imposta SSL / TLS
Alice vuole rendere il suo sito protetto. Alice crea una coppia di chiavi privata / pubblica e invia la chiave pubblica alla CA.
La CA raggruppa la chiave pubblica, il nome di dominio e altre informazioni di Alice in un unico pacchetto. Quindi CA crittografa il pacchetto con la chiave privata della CA e lo invia ad Alice.
Ora Alice ha un certificato firmato che contiene la sua chiave pubblica, il nome del dominio e alcune altre informazioni. Il certificato è crittografato (firmato) con la chiave privata della CA. Può essere decodificato con la ben nota chiave pubblica di CA.
Questo passaggio deve essere eseguito una sola volta.
Passaggio 3, Bob si connette ad Alice
Bob collega al sito web di Alice. Alice invia a Bob il suo certificato firmato. Bob ottiene il certificato firmato e lo decripta usando la chiave pubblica della CA che già conosce. Ora, bob controlla se il nome di dominio all'interno del certificato corrisponde a quello a cui si sta connettendo. Una volta fatto, Bob è sicuro di avere la chiave pubblica di Alice e nessun MITM può verificarsi.
(Supponendo che la CA non sia cattiva)
Passaggio 4, Scar tenta di intercettare
Bob si connette nuovamente al sito Web di Alice. Alice invia a Bob il suo certificato firmato.
Questa volta Scar che ha il controllo della rete di Bob sta ascoltando il flusso di comunicazione. Sebbene possa intercettare e decifrare il certificato di Alice utilizzando la ben nota chiave pubblica di CA, non può modificare il certificato e crittografarlo nuovamente perché Scar non ha la chiave privata della CA. Il meglio che può fare è corrompere il certificato, ma ciò avverte Bob e la connessione si interromperà.