Kontrola certifikátu VPN bez vypísania jeho kľúča
Čítajte verejné polia, dátumy a odtlačky bez vypísania kľúčového materiálu. Ktorý príkaz je bezpečný, závisí od toho, čo súbor obsahuje a kto dostane výstup.
Čítanie verejných polí certifikátu nikdy nevyžaduje zobrazenie súkromného kľúča, ktorý k nemu patrí, a nástroje na to sú súčasťou každého systému, ktorý ukončuje VPN. Riziko je o krok skôr: súbor, ktorý ste dostali, nemusí byť vôbec certifikát. Certifikát PEM, binárny DER, balík PKCS#12 a OpenVPN profil môžu prísť s rovnakým názvom a obsahovať veľmi odlišný materiál, preto pred výberom príkazu zistite, o aký kontajner ide.
Ktorý príkaz je bezpečný, rozhodujú tri skutočnosti: čo súbor obsahuje, čo z neho potrebujete prečítať a kto uvidí výstup. Ak sa pomýlite v ktorejkoľvek z nich, samotná kontrola sa stane incidentom.
Ktorý z troch súborov ste dostali
Certifikát PEM je text so zreteľnými značkami BEGIN a END, súbor DER je binárny a potrebuje prepínač vstupného formátu a balík je kontajner, ktorý môže obsahovať kľúč vedľa certifikátu. file server.crt oddelí text od binárneho obsahu za sekundu a pohľad na prvý riadok oddelí holý certifikát od profilu, ktorý ho obsahuje. Práve hádanie zmení kontrolu na incident.
Ak je súbor profil a nie certifikát, považujte ho za poverenie, kým sa nepreukáže opak. Tento predpoklad nič nestojí a zabráni najčastejšej chybe v celej tejto úlohe.
Čítanie verejných polí certifikátu PEM
Pre certifikát, ktorý smiete kontrolovať, podpríkaz x509 s -noout vypíše polia, ktoré vyberiete, a nič iné. Potlačenie tela je to, čo obmedzí výstup na metadáta, a práve preto ho možno bezpečne vložiť do tiketu. Selektory nižšie sú verejné a dokumentácia openssl x509 uvádza ostatné.
openssl x509 -in server.crt -noout -subject -issuer -dates -fingerprint -sha256
Na lokálne vygenerovanom testovacom certifikáte ten príkaz vypíše riadok subject a issuer, dvojicu notBefore a notAfter a jeden odtlačok SHA-256. Tieto polia identifikujú objekt; nevytvárajú platnú cestu dôvery, čo je samostatná overovacia úloha s vlastným príkazom a vlastnou odpoveďou. Súbor reťazca môže tiež vypísať iba prvý certifikát, ak súbor sami neprejdete. Porovnanie dvoch súborov takto stojí jeden príkaz a určí, ktorý z nich protistrana skutočne predkladá.
Balíky, ktoré obsahujú kľúč vedľa certifikátu
Súbor .p12 alebo .pfx môže obsahovať súkromný kľúč a príkaz na parsovanie ho vypíše, ak tú časť výstupu nepotlačíte. S -nokeys ten istý príkaz stále hlási štruktúru kontajnera vrátane zahaleného vrecka s kľúčom, ale nevyžaruje žiadny kľúčový materiál; ak prepínač vynecháte, v termináli a v histórii shellu sa objaví blok kľúča.
openssl pkcs12 -in bundle.p12 -nokeys -info -passin env:P12PASS
Profil OpenVPN obsahuje ten istý materiál ako text, takže hranica je viditeľná, ak viete, kam sa pozerať. Verejný materiál je medzi BEGIN CERTIFICATE a END CERTIFICATE, zatiaľ čo všetko medzi BEGIN PRIVATE KEY a príslušným riadkom END je kľúč a nesmie opustiť hostiteľa. Kopírovanie profilu ako celku zverejní oboje.
Získanie referenčnej hodnoty odinakiaľ
Odtlačok prečítaný zo spojenia, ktoré sa snažíte overiť, nič nepreukazuje, pretože ho dodala strana, ktorej nedôverujete. To nie je argument proti odtlačkom; je to argument o pôvode. Porovnajte hodnotu s hodnotou získanou kanálom, do ktorého protistrana nemôže zapisovať, napríklad s certifikátom zverejneným v internom úložišti alebo s hashom vytlačeným v podpísanom zázname o zmene.
Ak validáciu vykonáva úložisko dôvery, nechajte ju naň a prečítajte si chybu, ktorú vytvorí, namiesto toho, aby ste ju nahradili vlastným porovnaním. Rozhodujúce je, kto dodal referenciu, nie to, ktorá hashovacia funkcia sa použila.
Zdieľanie výsledku a čo robiť po pošmyknutí
Pošlite presnú chybu validácie, príslušné dátumy a iba identity, ktoré príjemca potrebuje. Interné názvy hostiteľov a identifikátory účtov zostávajú citlivé, aj keď nie je prítomný žiadny kľúč, a verejná služba na vkladanie textu je pre čokoľvek z toho nesprávnym cieľom. Vkladajte do tiketu, nie do dočasnej schránky, ktorú niekto iný zdieľa.
Ak sa kľúčový materiál predsa objavil na obrazovke alebo v súbore, považujte ho za kompromitovaný a vymeňte ho, namiesto toho, aby ste dúfali, že sa nikto nepozrel. Potom si zapíšte kontrolovaný súbor, použitý príkaz a kam výstup išiel, pretože práve tento záznam mení strach na postup. Výmena je lacná oproti cene predpokladu, že si nikto neuložil snímku obrazovky, a ten istý záznam povie ďalšiemu inžinierovi, ktoré súbory boli vôbec dotknuté. Urobte oboje pred uzavretím tiketu.