Un gateway VPN stă la capătul tunelului pe care îl protejează, ceea ce înseamnă că termină acea criptare în loc să o lase să treacă. Dacă un atacator controlează gazda, tunelul continuă să pară sănătos din exterior, în timp ce mașina din mijloc nu mai este de încredere. Întrebarea utilă nu este dacă totul este decriptat. Ci ce putea vedea acea gazdă, până unde putea ajunge și ce secrete erau de fapt stocate pe ea. Aceste trei răspunsuri diferă mult, iar reacția diferă odată cu ele.

Gateway-ul termină tunelul, deci vede în interiorul lui

Criptarea într-un VPN se face salt cu salt, iar gateway-ul este saltul. Îndepărtează stratul exterior, aplică politica și redirecționează pachetul interior, așa că fiecare pachet transportat există la un moment dat în formă lizibilă în memoria acelei gazde. Acesta este designul, nu un defect. De aceea compromiterea gateway-ului este un eveniment diferit de compromiterea criptografiei tunelului.

Primul lucru pe care îl câștigă atacatorul este poziția: capacitatea de a observa traficul transportat, de a modifica redirecționarea sau de a răspunde în locul unui backend. Ce câștigă în continuare depinde de gazdă, iar aici oamenii supraestimează. Accesul la gateway singur nu predă cheile de sesiune TLS ale unui browser, pentru că acestea nu au fost niciodată pe gateway.

Trei expuneri care nu au aceeași dimensiune

Împarte întrebarea în trafic transportat, sisteme accesibile și secrete stocate, apoi răspunde la fiecare separat.

ExposureWhat the attacker gainsWhat does not follow
Carried trafficPlaintext of whatever the tunnel forwards without its own encryptionKeys for TLS sessions that terminate at the application
Reachable systemsWhatever the backends accept from the gateway's addressControl of every connected client endpoint
Stored secretsThe specific keys, tokens and accounts present on that hostPossession of every client certificate or of a CA key

Rândul din mijloc este cel care este sărit. Un gateway are de obicei o rută către rețele private și o adresă sursă în care backend-urile au deja încredere, așa că întrebarea interesantă este ce permit acele backend-uri de la acea adresă. O politică îngustă de acces pentru clienți este un control bun, dar un atacator pe gazdă nu este limitat la interfața pe care ar folosi-o un client normal.

Rândul de jos decide cât durează incidentul. O cheie de server și o cheie CA au raze de impact complet diferite, la fel ca un cont de administrator local și un token de monitorizare doar pentru citire.

HTTPS din interiorul tunelului rămâne HTTPS

TLS-ul aplicației se termină în aplicație, nu la gateway-ul VPN, așa că un gateway compromis observă doar text cifrat pentru acele fluxuri. Aceasta este o limită reală a ceea ce obține atacatorul, și merită spus clar, pentru că afirmația opusă răspândește panică și decizii proaste. Două condiții o încalcă. Dacă în cale se află o componentă de inspecție cu un certificat de încredere, gateway-ul poate vedea text simplu prin design. Dacă punctul final al aplicației este el însuși compromis, tunelul este irelevant.

Deci răspunsul la ce au văzut este condiționat, și ar trebui scris ca condiții în loc să fie anunțat ca verdict.

Ce trebuie să se schimbe înainte de a te încrede din nou

Reconstruirea gazdei este necesară și rareori suficientă. Un atacator care mai deține un cont de administrare, o acreditare de implementare sau o cheie de semnare poate readuce gazda cum vrea. Recuperarea trebuie să înceapă de la o cale administrativă care nu depinde de mașina compromisă.

Inventariază ce era pe ea înainte de a decide ce trebuie rotit. Chei, conturi de serviciu, tokenuri API, utilizatori locali, sarcini programate, relații de încredere și pipeline-ul de implementare sunt toți candidați, și fiecare are un proprietar care ar trebui să confirme.

ss -lntup
getent passwd
crontab -l
ip route show table all

Acea listă este cea mai rapidă cale de a vedea ce oferea gazda și până unde putea ajunge. Păstrează mai întâi dovezile, conform procesului proprietarului răspunsului, pentru că o reconstrucție distruge exact ceea ce are nevoie o anchetă. NIST SP 800-61 Revizia 3 tratează pregătirea, detectarea, răspunsul și recuperarea ca părți ale unui singur proces de risc, nu ca o instrucțiune de repornire.

Frontiere care fac următorul mai ieftin

Merită să construiești patru frontiere înainte de a avea nevoie de ele. Păstrează o cale de recuperare independentă care nu se autentifică prin gateway. Păstrează autoritatea de semnare separată de gazda care servește trafic. Limitează până unde poate ajunge gateway-ul, astfel încât un gateway compromis să nu fie automat o rețea de administrare compromisă. Și notează cui aparține fiecare acreditare, astfel încât rotația să fie un telefon în loc de un proiect de arheologie.

Niciuna dintre acestea nu împiedică compromiterea. O limitează și fac diferența între o săptămână rea și un trimestru rău.

Articole similare