Môže reťaz certifikátov servera prepísať úložisko dôvery klienta?
Úplná reťaz je dôkaz, nie príkaz. Overovanie prebieha na klientovi s jeho vlastnými koreňmi, takže žiadny server nemôže vynútiť rozhodnutie o dôvere.
Prehliadač zobrazí upozornenie na certifikát na webe, ktorého reťaz je úplná, a prvým inštinktom je opraviť server. Server zvyčajne predkladá presne to, čo má. Klient rozhoduje, ktoré korene prijme, a žiadne usporiadanie sprostredkujúcich certifikátov nemôže toto rozhodnutie zmeniť z druhého konca spojenia. Táto hranica vysvetľuje väčšinu toho, čo vyzerá ako problém s certifikátom.
Overovanie prebieha na klientovi, s koreňmi klienta
Overenie cesty vezme predložené certifikáty a zostaví reťaz k dôveryhodnému koreňu, ktorý overovací systém už má. RFC 5280 tento model opisuje a kladie voľbu koreňa do miestnej implementácie, nie na server. Aplikácia môže navrch pridať vlastnú politiku: pripnutý kľúč, podnikové úložisko dôvery, alebo prísnejšiu kontrolu identity. Zoznam certifikátov, ktorý server posiela, je dôkaz ponúknutý tomu procesu, nikdy príkaz preň.
Úplná reťaz teda dokazuje, že server má diely. Nedokazuje, že ich klient prijme.
Ak chcete vidieť, čo server skutočne posiela, spustite openssl s_client -connect app.example.net:443 -servername app.example.net -showcerts a spočítajte certifikáty vo výstupe. Neúplná reťaz tam je oprava na strane servera. Úplná reťaz presúva otázku na klienta a jeho korene, kde server nemá hlas.
Čo inšpekcia TLS skutočne mení
Inšpekčné zariadenie ukončí TLS reláciu na strane klienta a otvorí samostatnú reláciu k skutočnej službe. Klient potom overí certifikát zariadenia, ktorý musí viesť koreňu, ktorému klient dôveruje. Preto spravované zariadenia dostávajú inšpekčný koreň cez správu zariadení a preto osobné zariadenie bez neho zobrazuje upozornenie.
Usporiadanie je zámerné a miestne. Nič v reťazi pôvodného servera nemôže prinútiť nespravovaný prehliadač prijať náhradnú identitu a nič v nej nebráni spravovanému zariadeniu, aby tak urobilo.
Ukončenie VPN nie je dešifrovanie HTTPS
VPN vrstva prenáša pakety medzi klientom a bránou. Jej odstránenie alebo čítanie jej konfigurácie neodhalí vnútri HTTPS obsah.
TLS relácia stále prebieha medzi prehliadačom a webovým serverom, s rovnakými pravidlami overovania, ak ju niečo výslovne neukončí. Miešanie oboch vrstiev vedie k žiadosti, aby správca VPN dodal certifikát, hoci dotyčný certifikát patrí inšpekčnému proxy alebo samotnému webu. Pred zmenou akéhokoľvek úložiska dôvery sa opýtajte, ktorý komponent certifikát predkladá.
Nastavte očakávania v komponente, ktorý ovládate
Ak prevádzkujete aplikáciu aj jej klienta, definujte spoločne očakávanú identitu služby, akceptovaných vydavateľov a akúkoľvek požiadavku na pripnutie alebo autentifikáciu klienta. Plánujte obnovu a zotavenie tak, aby sa legitímna zmena certifikátu nestala výpadkom. Ak prevádzkujete len verejný server, zdokumentujte, aké overenie vyžadujete a ktoré klientske prostredia podporujete. Odoslanie preferovanej reťaze necertifikuje zariadenie cudzieho človeka.
Na spravovanom vybavení riešte nekompatibilitu cez vlastníkov aplikácie a siete. Vypnutie overovania, pridanie nevysvetleného koreňa alebo snaha prečkať inšpekčnú politiku nenadväzuje zamýšľaný vzťah strán.
Otestujte výsledok na čistom klientskom profile, nie na stroji, kde už bola pridaná výnimka. To je jediná kontrola, ktorá ukáže, čo nové zariadenie zažije.