Najdete kořenový certifikát, který tam být nemá, a první otázka zní, čí identitu může vydávat. Poctivá odpověď závisí na tom, který software ono úložiště používá a jak vaše VPN ověřuje svou bránu. Prohlížeč, správce balíčků a klient VPN s připnutým otiskem nemusejí sdílet stejné rozhodnutí o důvěře. Zmapujte validátory, než rozhodnete o rozsahu.

Kořen v systémovém úložišti není univerzální klíč

Instalace kořene zpřístupní certifikáty podepsané tímto klíčem programům, které dotčené úložiště používají. Automaticky je nezpřístupní všude, protože některé aplikace přinášejí vlastní svazek nebo kontrolují připnutou hodnotu. Nedokazuje to ani, že někdo na stroji spustil kód; změna důvěry je jedna z několika schopností. Berte certifikát jako zjištění, jehož rozsah je třeba vymezit, nikoli jako celý incident.

Úložiště je stejně důležité jako certifikát: svazek na úrovni uživatele a systémová kotva se dostanou k různým konzumentům.

Zmapujte každý validátor a jeho zdroj důvěry

Zapište každou komponentu, která ověřuje certifikáty pro dotčené postupy: prohlížeč, správce balíčků, poštovní klient, VPN. Pak najděte zdroj důvěry, který každá z nich čte.

ls /usr/local/share/ca-certificates
trust list | grep -i -E "vpn|corp"

Výpis adresáře ukazuje místně přidané kotvy na systémech typu Debian a seznam důvěry ukazuje, co systémové úložiště právě vystavuje. Prohlížeč s vlastním úložištěm se tam neobjeví a aplikace v Javě nebo Pythonu může používat ještě jiný svazek. Zaznamenejte, které položky jsou očekávané a které ne, s pomocí otisku, ne jen zobrazovaného názvu. Právě tento seznam potřebuje tým reakce na incidenty, než cokoli smaže.

Ověřte vlastní validaci protějšku u VPN

VPN s soukromou CA nebo explicitním otiskem vyhodnocuje bránu podle vlastní konfigurace. Porovnejte, co klient očekává, s tím, co brána předkládá.

openssl s_client -connect vpn.example.com:443 -servername vpn.example.com -showcerts </dev/null 2>/dev/null | openssl x509 -noout -fingerprint -sha256 -subject

Výstup udává otisk SHA-256 a subjekt certifikátu, který koncový bod předkládá, a můžete je porovnat s nakonfigurovanou hodnotou. OpenVPN má volbu otisku protějšku, která toto porovnání provede pro tunel, aniž by systémové úložiště muselo přijmout podepisujícího. Tato nezávislost je užitečná pro tunel a o prohlížeči neříká nic. Nepomůže ani tehdy, pokud byl očekávaný otisk od začátku zkopírován z podezřelého spojení.

Vymezte incident i mimo certifikát

Postupem vlastníka zařízení odstraňte neoprávněné kotvy a hledejte změny, které je obvykle doprovázejí: nové služby, upravené klienty, pozměněná nastavení proxy. Na spravovaném stroji potvrďte legitimní konfiguraci, než smažete materiál, na němž závisí jiný software. U každého validátoru zaznamenejte, odkud pochází jeho důvěra, jakou identitu očekává a jak jste potvrdili, že současná konfigurace je správná. Funkční tunel po úklidu je jedno pozorování, nikoli důkaz, že koncový bod je čistý.

Poté znovu otestujte postupy, které úložiště používaly, protože odebrání kotvy může rozbít interní službu, která na ní legitimně závisela. Obnova je dokončena, když očekávané vztahy důvěry fungují a neočekávané nikoli.

Související články