Čo dokazuje špecifikácia VPN protokolu a čo nie
Špecifikácia určuje formáty správ, algoritmy a predpoklady o hrozbách. Nemôže ručiť za build, ktorý ste nainštalovali, ani za to, ako operátor nakladá s vaším účtom.
Dokument protokolu je zmluva medzi implementáciami a jeho pozorné čítanie vám povie, čo si dva zhodne sa správajúce partneri vymenia a aké vlastnosti mali návrhári v úmysle zabezpečiť. Nehovorí vám, ktorý binárny súbor beží na serveri, ku ktorému sa pripájate, ako je ten server nakonfigurovaný ani čo sa potom stane so záznamom vášho účtu. To sú tri rôzne druhy dôkazov a zaobchádzanie so špecifikáciou ako so všetkými tromi je spôsob, ako meno protokolu začne robiť prácu, ktorú robiť nemôže. Držať tieto tri oddelene je celé cvičenie.
Dokument je začiatok argumentu, nie jeho záver.
Čo dokument skutočne určuje
Pre WireGuard opis protokolu definuje handshake Noise IK, pevnú množinu primitív, rozvrhnutia správ a transportné rámovanie, ktoré potom nesie pakety. Pre IKEv2 je porovnateľným artefaktom RFC 7296, ktorý určuje výmeny, užitočné zaťaženia a vyjednávanie návrhov. V oboch prípadoch je rozsah presný: správy, stavový automat a predpoklady, za ktorých platia bezpečnostné ciele.
Voliteľné režimy sťažujú čítanie. Vlastnosť, ktorá platí pre jeden handshake, sa nemusí vzťahovať na nasadenie s iným usporiadaním autentifikácie alebo záložnou konfiguráciou.
Kde sa záruky končia
Formálna analýza odpovedá na otázku o modeli. Práca na verifikácii WireGuardu používa symbolický model v dokazovači Tamarin, ktorý môže ukázať, že návrh za svojich predpokladov odoláva určitým útokom; neukazuje, že dodaná implementácia v používateľskom priestore nemá chybu bezpečnosti pamäte. Práve v tejto medzere medzi modelom a strojom žijú skutočné incidenty. Čítať dôkaz ako certifikát implementácie je kategorická chyba.
Dopredná utajenosť ilustruje tú istú hranicu. Vlastnosť závisí od toho, že sa kľúče zničia tak, ako to protokol zamýšľa, a to je vlastnosť implementácie a jej prostredia, nie formátu správy. Návrh, ktorý predpisuje vymazanie, ho nemôže vynútiť na platforme, ktorá odkladá pamäť na disk.
Vrstvené závislosti medzeru ďalej rozširujú: knižnica TLS za tunelom založeným na TLS, rozhranie jadra, ktoré používa tunel v používateľskom priestore, a generátor náhodných čísel stoja všetky mimo textu protokolu.
Sledujte bajty až do buildu
Prejdite od dokumentu k artefaktom tak, že identifikujete verzie a potom ich porovnáte s tým, čo skutočne obsluhuje prevádzku. Produkt, ktorý menuje protokol, môže pridať komponenty na zabezpečenie, telemetriu a správu, ktoré špecifikácia nikdy neopisuje.
openvpn --version | head -3 wg --version dpkg -l | grep -E 'openvpn|wireguard|libssl' ss -lunp | grep -E '1194|51820' sha256sum ./wireguard-tools_1.0.20210914_amd64.deb
Reprodukovateľné buildy a zverejnené kontrolné súčty umožňujú prepojiť strom zdrojov s distribuovaným binárnym súborom. Bez tohto prepojenia zverejnený zdroj dokazuje len to, že kontrola je možná, nie že bežiaci súbor mu zodpovedá.
Konfigurácia patrí do toho istého kroku. Šifrové sady, povolené strany a nastavenia smerovania sú voľby nasadenia a zhodný build nakonfigurovaný nedbalo stále vytvára slabý tunel.
Držte prevádzkové postupy oddelene
Záznamy účtov, platobné údaje a žiadosti o podporu sú rozhodnutia operátora, ktoré neobmedzuje žiadny text protokolu. Audítorská správa pokrýva menované komponenty v rámci uvedeného rozsahu a zásady ochrany súkromia opisujú zámery a postupy; ani jedno nenahrádza druhé a ani jedno nie je kryptografické tvrdenie.
Presný záver je kumulatívny: špecifikácia vysvetľuje návrh, build a konfigurácia vysvetľujú tunel a dokumentované postupy operátora vysvetľujú všetko, čo tunel nikdy nevidí. Povedzte, čo z toho ste overili, a tvrdenie zostane pravdivé.