Vaš VPN pristupnik je kompromitiran: šta je zapravo izloženo
Hakiran VPN pristupnik vidi unutar sopstvenog tunela, ali to nije kontrola nad svakom sesijom. Odvojite saobraćaj, doseg i sačuvane tajne pre oporavka.
VPN pristupnik stoji na kraju tunela koji štiti, što znači da prekida tu enkripciju umesto da je propušta dalje. Ako napadač kontroliše host, tunel spolja i dalje izgleda zdravo, dok mašina u sredini više nije pouzdana. Korisno pitanje nije da li je sve dešifrovano. Pitanje je šta je taj host mogao videti, do čega je mogao doći i koje su tajne na njemu zaista bile sačuvane. Ta tri odgovora se mnogo razlikuju, a i reakcija se razlikuje s njima.
Pristupnik prekida tunel, pa vidi unutar njega
Enkripcija u VPN-u ide hop po hop, a pristupnik je taj hop. On skida spoljni sloj, primenjuje politiku i prosleđuje unutrašnji 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 drugačiji događaj od kompromitacije kriptografije tunela.
Prvo što napadač dobija jeste pozicija: mogućnost da posmatra preneseni saobraćaj, menja prosleđivanje ili odgovara umesto backend sistema. Šta dobija dalje zavisi od hosta, i tu ljudi preteruju. Sam pristup pristupniku ne predaje TLS sesijske ključeve pregledača, jer oni nikada nisu bili na pristupniku.
Tri izlaganja koja nisu iste veličine
Podelite pitanje na preneseni saobraćaj, dostupne sisteme i sačuvane 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 red je onaj koji se preskače. Pristupnik obično ima rutu u privatne mreže i izvornu adresu kojoj backend sistemi već veruju, pa je zanimljivo pitanje šta ti backend sistemi dozvoljavaju sa te adrese. Uska politika klijentskog pristupa je dobra kontrola, ali napadač na hostu nije ograničen na interfejs koji bi koristio normalan klijent.
Donji red odlučuje koliko incident traje. Serverski ključ i CA ključ imaju potpuno različite radijuse udara, kao i lokalni administratorski nalog 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 kompromitovani pristupnik za te tokove vidi šifrat. To je stvarno ograničenje onoga što napadač dobija i vredi ga reći jasno, jer suprotna tvrdnja širi paniku i loše odluke. Dva uslova to ruše. Ako je na putu komponenta za inspekciju sa pouzdanim sertifikatom, pristupnik može po dizajnu videti čist tekst. Ako je sama krajnja tačka aplikacije kompromitovana, tunel nije relevantan.
Zato je odgovor na pitanje šta su videli uslovan, i treba ga zapisati kao uslove, a ne objaviti kao presudu.
Šta mora da se promeni pre nego što mu ponovo verujete
Ponovno postavljanje hosta je neophodno i retko dovoljno. Napadač koji još drži upravljački nalog, akreditiv za implementaciju ili ključ za potpisivanje može vratiti host kako želi. Oporavak mora početi od administrativnog puta koji ne zavisi od kompromitovane mašine.
Pre nego što odlučite šta rotirati, napravite popis onoga što je bilo na njemu. Ključevi, servisni nalozi, API tokeni, lokalni korisnici, zakazani poslovi, odnosi poverenja i implementacioni pipeline svi su kandidati, a svaki ima vlasnika koji bi to trebao potvrditi.
ss -lntup
getent passwd
crontab -l
ip route show table allTaj spisak je najbrži način da vidite šta 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 delove jednog procesa rizika, a ne kao uputstvo za ponovno pokretanje.
Granice koje sledeći slučaj čine jeftinijim
Četiri granice vredi izgraditi pre nego što vam zatrebaju. Držite nezavisan put oporavka koji se ne autentifikuje kroz pristupnik. Držite ovlašćenje za potpisivanje odvojeno od hosta koji opslužuje saobraćaj. Ograničite dokle pristupnik može doći, da kompromitovani pristupnik ne bude automatski kompromitovana upravljačka mreža. I zabeležite kome pripada svaki akreditiv, da rotacija bude telefonski poziv umesto arheološkog projekta.
Nijedna od ovih ne sprečava kompromitaciju. One je ograničavaju i čine razliku između loše nedelje i lošeg kvartala.