Du finder et rodcertifikat, der ikke burde være der, og det første spørgsmål er, hvis identitet det kan efterligne. Det ærlige svar afhænger af, hvilken software der bruger det lager, og hvordan din VPN verificerer sin gateway. En browser, en pakkehåndtering og en VPN-klient med et fastgjort fingeraftryk deler ikke nødvendigvis samme tillidsbeslutning. Kortlæg validatorerne, før du fastlægger omfanget.

En rod i systemlageret er ikke en universel nøgle

Installation af en rod gør certifikater signeret med den nøgle acceptable for programmer, der bruger det berørte lager. Det gør dem ikke automatisk acceptable overalt, fordi nogle programmer leverer deres egen pakke eller kontrollerer en fastgjort værdi. Det beviser heller ikke, at nogen har kørt kode på maskinen; en tillidsændring er én blandt flere muligheder. Behandl certifikatet som et fund, der skal afgrænses, ikke som hele hændelsen.

Lageret betyder lige så meget som certifikatet: en brugerpakke og et systemdækkende anker når forskellige forbrugere.

Kortlæg hver validator og dens tillidskilde

Skriv hver komponent ned, der validerer certifikater for de berørte arbejdsgange: browser, pakkehåndtering, mailklient, VPN. Find derefter den tillidskilde, som hver af dem læser.

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

Mappelisten viser lokalt tilføjede ankere på Debian-lignende systemer, og tillidslisten viser, hvad systemlageret aktuelt eksponerer. En browser med sit eget lager vises ikke der, og et Java- eller Python-program kan bruge endnu en pakke. Notér, hvilke poster der er forventede, og hvilke der ikke er, ved hjælp af fingeraftrykket i stedet for kun visningsnavnet. Den liste er, hvad en hændelsesrespondent har brug for, før noget slettes.

Kontroller VPN'ens egen peer-validering

En VPN med en privat CA eller et eksplicit fingeraftryk vurderer gatewayen ud fra sin egen konfiguration. Sammenlign, hvad klienten forventer, med hvad gatewayen præsenterer.

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

Outputtet giver SHA-256-fingeraftrykket og emnet for det certifikat, som endpointet præsenterer, og du kan sammenligne dem med den konfigurerede værdi. OpenVPN's peer-fingeraftryksmulighed udfører den sammenligning for tunnelen uden at kræve, at systemlageret accepterer underskriveren. Den uafhængighed er nyttig for tunnelen og siger intet om browseren. Det hjælper heller ikke, hvis det forventede fingeraftryk blev kopieret fra den mistænkelige forbindelse i første omgang.

Afgræns hændelsen ud over certifikatet

Brug enhedsejerens proces til at fjerne uautoriserede ankere og lede efter de ændringer, der normalt følger dem: nye tjenester, ændrede klienter, ændrede proxyindstillinger. På en administreret maskine skal du bekræfte den legitime konfiguration, før du sletter materiale, som anden software afhænger af. For hver validator skal du notere, hvor dens tillid kommer fra, hvilken identitet den forventer, og hvordan du har bekræftet, at den aktuelle konfiguration er korrekt. En fungerende tunnel efter oprydningen er én observation, ikke bevis for at endpointet er rent.

Test derefter de arbejdsgange igen, der brugte lageret, fordi fjernelse af et anker kan ødelægge en intern tjeneste, der med rette stolede på det. Gendannelsen er færdig, når de forventede tillidsforhold virker, og de uventede ikke gør.

Relaterede artikler