Ako otestovať, čo pokrýva núdzový vypínač na kompromitovanom hostiteľovi
Spustite test výpadku, prečítajte výsledok každej vrstvy a pozrite, kde sa núdzový vypínač zastaví: blokuje cesty, nie softvér, ktorý číta dáta pred šifrovaním.
Zapnite núdzový vypínač, odpojte tunelový server a sledujte, čo stroj ešte robí. Test sa oplatí, pretože oddeľuje to, čo firewall naozaj vynucuje, od toho, čo ste predpokladali, a výsledky sú užšie, než naznačuje väčšina produktových stránok. Núdzový vypínač riadi sieťové cesty; neriadi softvér, ktorý už na zariadení beží. Túto sekvenciu vykonávam na každom stroji, kde klient tvrdí, že je fail-closed, a trvá asi desať minút.
Začnite pri klientovi, nie pri serveri
Miestom vynútenia je hostiteľ, na ktorom sedíte: firewall operačného systému, pomocná služba alebo vlastný ovládač klienta VPN. To je dôležité, pretože všetko, čo vypínač môže urobiť, je obmedzené tým, čo táto vrstva vidí. Ak klient blok vykonáva smerovacím pravidlom a značkou, čokoľvek s dostatkom oprávnení môže pridať vlastné pravidlo; ak používa tabuľku firewallu jadra, tie isté oprávnenia môžu tabuľku upraviť. Sila šifry do tejto otázky nikdy nevstupuje.
Najprv teda treba zistiť, komu patrí politika na tomto zariadení a čo smie prepísať. Na spravovanom pracovnom stroji je odpoveďou zvyčajne agent koncových bodov organizácie a osobná VPN tieto schopnosti neodstráni, nech je tunel nakonfigurovaný akokoľvek.
Prvý krok: potvrďte blok na cestách, o ktorých si myslíte, že ich pokrýva
Zhoďte tunel na vzdialenom konci, nie u klienta, aby klient stále veril, že by mal byť pripojený. Potom vyskúšajte to, čo by človek naozaj vyskúšal:
curl -m 5 -sS -o /dev/null -w '%{http_code}
' https://example.com
ping -c 2 1.1.1.1
ip route
nft list ruleset # or: iptables -S
Chcete klienta, ktorý zlyháva rýchlo a čisto, nie takého, ktorý visí do časového limitu prehliadača. Visenie zvyčajne znamená, že pakety ticho zahadzuje pravidlo bez odmietnutia, čo je prijateľné, ale môže tiež znamenať, že klient nechal zastaranú predvolenú trasu namierenú na mŕtve rozhranie. Prečítajte smerovaciu tabuľku, kým je tunel dole: predvolená trasa stále ukazujúca na tunelové zariadenie a pravidlo firewallu, ktoré blokuje len nové odchádzajúce spojenia, sú dva rôzne stavy a len jeden z nich je fail-closed.
Zopakujte tie isté príkazy s povolenou aj zakázanou voľbou allow-LAN klienta. Ten prepínač je miestom väčšiny prekvapení, pretože znovu otvára cestu, ktorú mal zvyšok politiky zavrieť.
Druhý krok: skontrolujte DNS a IPv6 ako samostatné cesty
Preklad mien je medzera, ktorá prežije väčšinu implementácií, pretože dopyt môže odísť inam než systémovým resolverom. Pýtajte sa nástrojom, ktorý ignoruje vašu konfiguráciu resolvera, a zároveň skontrolujte stranu v6:
dig +short example.com
dig +short @1.1.1.1 example.com
curl -6 -m 5 -sS https://example.com -o /dev/null -w '%{http_code}
'
ip -6 route
Prázdne odpovede na oba dopyty na meno s tunelom dole sú výsledok, ktorý chcete. Ak druhý dopyt odpovie, pevne zadaná adresa resolvera je dostupná a tunel nie je jediná cesta zo stroja. Ak uspeje len požiadavka v6, politika pokrýva IPv4 a ignoruje IPv6, čo je tá istá netesnosť v inej rodine adries.
Prehliadače to zvonku sťažujú, pretože prehliadač nastavený na DNS cez HTTPS rieši dopyt požiadavkou HTTPS: dopyt je blokovaný len natoľko, nakoľko je blokovaný port 443 k tomuto koncovému bodu. Na hostiteľovi, kde politika povoľuje miestnu podsiev, sa táto požiadavka ešte môže dostať k resolveru v LAN.
Tretí krok: oddeľte sieťovú expozíciu od expozície koncových bodov
Teraz časť, kam nedosiahne žiadne pravidlo firewallu. Núdzový vypínač blokuje cesty zo stroja; nezastaví softvér na stroji v čítaní dát pred ich šifrovaním a nezastaví tento softvér v legitímnom používaní tunela. Keylogger, škodlivé rozšírenie, nechaná odomknutá obrazovka, synchronizačný klient so širokými právami: všetko to prenáša informácie cez spojenie, ktoré vypínač rád povolí.
To isté platí pre monitorovací softvér, ktorý zamestnávateľ nainštaloval zámerne. Blokovanie trás ho neodstráni a kúpa nového servera VPN nie je oprava, pretože expozícia je pred tunelom.
Správca schránky, ktorý nahráva na cloudový účet, to ukazuje ostro. Prevádzka je šifrovaná, cieľ je povolený a núdzový vypínač celý čas hlási zdravý stav.
Štvrtý krok: napíšte tvrdenie, ktoré váš test podporuje
Po teste výpadku môžete uviesť konkrétne fakty: ktoré aplikácie zlyhali, ktoré cesty sa zastavili, ako sa správali DNS a IPv6 a či blok vydržal, keď tunel spadol. Nemôžete tvrdiť, že operačný systém je čistý, ani že služba na vzdialenom konci udrží vaše prihlásenie v súkromí.
Držte oba problémy oddelene a každému dajte vlastnú kontrolu:
- Núdzový vypínač: definovaná požiadavka na zlyhanie, overená testom výpadku, ktorý opakujete po každej aktualizácii klienta.
- Dôvera zariadenia: podporované aktualizácie, ochrana koncových bodov z dôveryhodného zdroja, kontrola nevysvetlených oprávnení a výziev na overenie.
- Incident: pri podozrení na kompromitáciu postupujte podľa procesu platformy alebo organizácie; nový server nie je krok čistenia.
- Zverejnenie: keď žiadate o pomoc, nevkladajte súkromné kľúče ani celé diagnostické archívy, pretože protokoly a snímky obrazovky nesú rovnaké tajomstvá ako spojenie.
Spustite sekvenciu znova po ďalšej aktualizácii, pretože núdzový vypínač je konfigurácia, ktorá sa pohybuje s verziami. Test je jediný dôkaz, že správanie, na ktoré sa spoliehate, je stále to, ktoré dostávate.