Vaš VPN pristupnik je kompromitiran: što je zapravo izloženo
Hakiran VPN pristupnik vidi unutar vlastitog tunela, ali to nije kontrola nad svakom sesijom. Odvojite promet, doseg i pohranjene tajne prije oporavka.
VPN pristupnik stoji na kraju tunela koji štiti, što znači da prekida to šifriranje umjesto da ga propušta dalje. Ako napadač kontrolira host, tunel izvana i dalje izgleda zdravo, dok stroj u sredini više nije pouzdan. Korisno pitanje nije je li sve dešifrirano. Pitanje je što je taj host mogao vidjeti, do čega je mogao doći i koje su tajne na njemu doista bile pohranjene. Ta se tri odgovora jako razlikuju, a i reakcija se razlikuje s njima.
Pristupnik prekida tunel, pa vidi unutar njega
Šifriranje u VPN-u ide skok po skok, a pristupnik je taj skok. Skida vanjski sloj, primjenjuje politiku i prosljeđuje unutarnji paket, pa svaki preneseni paket u nekom trenutku postoji u čitljivom obliku u memoriji tog hosta. To je dizajn, a ne propust. Zato je kompromitacija pristupnika drukčiji događaj od kompromitacije kriptografije tunela.
Prvo što napadač dobije jest položaj: mogućnost promatranja prenesenog prometa, mijenjanja prosljeđivanja ili odgovaranja umjesto backend sustava. Što dobije dalje zavisi od hosta, i tu ljudi precijene. Sam pristup pristupniku ne predaje TLS sesijske ključeve preglednika, jer oni nikada nisu bili na pristupniku.
Tri izlaganja koja nisu iste veličine
Podijelite pitanje na preneseni promet, dostupne sustave i pohranjene tajne, pa odgovorite na svako zasebno.
| Exposure | What the attacker gains | What does not follow |
|---|---|---|
| Carried traffic | Plaintext of whatever the tunnel forwards without its own encryption | Keys for TLS sessions that terminate at the application |
| Reachable systems | Whatever the backends accept from the gateway's address | Control of every connected client endpoint |
| Stored secrets | The specific keys, tokens and accounts present on that host | Possession of every client certificate or of a CA key |
Srednji redak je onaj koji se preskače. Pristupnik obično ima rutu u privatne mreže i izvornu adresu kojoj backend sustavi već vjeruju, pa je zanimljivo pitanje što ti backend sustavi dopuštaju s te adrese. Uska politika klijentskog pristupa dobra je kontrola, ali napadač na hostu nije ograničen na sučelje koje bi koristio normalan klijent.
Donji redak odlučuje koliko incident traje. Serverski ključ i CA ključ imaju potpuno različite radijuse učinka, kao i lokalni administratorski račun i token za nadzor samo za čitanje.
HTTPS unutar tunela i dalje je HTTPS
TLS aplikacije prekida se u aplikaciji, a ne na VPN pristupniku, pa kompromitirani pristupnik za te tokove vidi šifrat. To je stvarno ograničenje onoga što napadač dobiva i vrijedi to jasno reći, jer suprotna tvrdnja širi paniku i loše odluke. Dva uvjeta to ruše. Ako je na putu komponenta za inspekciju s pouzdanim certifikatom, pristupnik može po dizajnu vidjeti čisti tekst. Ako je sama krajnja točka aplikacije kompromitirana, tunel nije relevantan.
Zato je odgovor na pitanje što su vidjeli uvjetovan, i treba ga zapisati kao uvjete, a ne objaviti kao presudu.
Što se mora promijeniti prije nego mu ponovno vjerujete
Ponovno postavljanje hosta nužno je i rijetko dovoljno. Napadač koji još drži upravljački račun, vjerodajnicu za implementaciju ili ključ za potpisivanje može vratiti host kako želi. Oporavak mora početi od administrativnog puta koji ne zavisi od kompromitiranog stroja.
Prije nego odlučite što rotirati, napravite popis onoga što je bilo na njemu. Ključevi, servisni računi, API tokeni, lokalni korisnici, zakazani poslovi, odnosi povjerenja i implementacijski pipeline svi su kandidati, a svaki ima vlasnika koji bi to trebao potvrditi.
ss -lntup
getent passwd
crontab -l
ip route show table allTaj popis najbrži je način da vidite što je host nudio i dokle je mogao doći. Prvo sačuvajte dokaze, prema procesu vlasnika odgovora, jer ponovno postavljanje uništava upravo ono što je istrazi potrebno. NIST SP 800-61 Revizija 3 tretira pripremu, otkrivanje, odgovor i oporavak kao dijelove jednog procesa rizika, a ne kao uputu za ponovno pokretanje.
Granice koje sljedeći slučaj čine jeftinijim
Četiri granice vrijedi izgraditi prije nego što vam zatrebaju. Držite neovisan put oporavka koji se ne autentificira kroz pristupnik. Držite ovlast za potpisivanje odvojeno od hosta koji poslužuje promet. Ograničite dokle pristupnik može doći, da kompromitirani pristupnik ne bude automatski kompromitirana upravljačka mreža. I zabilježite kome pripada svaka vjerodajnica, da rotacija bude telefonski poziv umjesto arheološkog projekta.
Nijedna od ovih ne sprječava kompromitaciju. One je omeđuju i čine razliku između lošeg tjedna i lošeg tromjesečja.