En VPN-gateway står ved enden af den tunnel, den beskytter, hvilket betyder, at den afslutter krypteringen i stedet for at sende den videre. Hvis en angriber kontrollerer værten, ser tunnelen stadig sund ud udefra, mens maskinen i midten ikke længere er troværdig. Det nyttige spørgsmål er ikke, om alt dekrypteres. Det er, hvad den vært kunne se, hvad den kunne nå, og hvilke hemmeligheder der faktisk var gemt på den. De tre svar er meget forskellige, og reaktionen er forskellig med dem.

Gatewayen afslutter tunnelen, så den ser ind i den

Kryptering i en VPN foregår hop for hop, og gatewayen er hoppet. Den fjerner det ydre lag, anvender politik og videresender den indre pakke, så hver transporteret pakke på et tidspunkt findes i læsbar form i den værtens hukommelse. Det er designet, ikke en fejl. Det er også derfor, kompromittering af gatewayen er en anden hændelse end kompromittering af tunnelens kryptografi.

Det, angriberen først vinder, er position: evnen til at observere transporteret trafik, ændre videresendelse eller svare i stedet for en backend. Hvad de vinder derefter, afhænger af værten, og det er her, folk overvurderer. Adgang til gatewayen alene udleverer ikke browserens TLS-sessionsnøgler, fordi de aldrig var på gatewayen.

Tre eksponeringer, der ikke er lige store

Del spørgsmålet op i transporteret trafik, tilgængelige systemer og gemte hemmeligheder, og svar derefter på hver især.

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

Den midterste række er den, der springes over. En gateway har normalt en rute ind i private netværk og en kildeaddresse, som backenderne allerede stoler på, så det interessante spørgsmål er, hvad disse backender tillader fra den adresse. En smal klientadgangspolitik er en god kontrol, men en angriber på værten er ikke begrænset til det interface, en normal klient ville bruge.

Den nederste række afgør, hvor længe hændelsen varer. En servernøgle og en CA-nøgle har helt forskellige virkninger, og det samme har en lokal administratorkonto og et skrivebeskyttet overvågningstoken.

HTTPS inde i tunnelen er stadig HTTPS

Applikations-TLS afsluttes i applikationen, ikke på VPN-gatewayen, så en kompromitteret gateway observerer kun ciphertext for de flow. Det er en reel grænse for, hvad angriberen får, og det er værd at sige klart, fordi den modsatte påstand spreder panik og dårlige beslutninger. To betingelser bryder det. Hvis en inspektionskomponent med et betroet certifikat sidder i vejen, kan gatewayen se klartekst ved design. Hvis selve applikationens endpoint er kompromitteret, er tunnelen irrelevant.

Så svaret på, hvad de så, er betinget, og det bør skrives ned som betingelser i stedet for at blive annonceret som en dom.

Hvad skal ændres, før du stoler på den igen

At genopbygge værten er nødvendigt og sjældent tilstrækkeligt. En angriber, der stadig har en administrationskonto, en udrulningslegitimationsoplysning eller en signeringsnøgle, kan sætte værten tilbage, som de vil. Genopretning skal begynde fra en administrationsvej, der ikke afhænger af den kompromitterede maskine.

Kortlæg, hvad der var på den, før du beslutter, hvad der skal roteres. Nøgler, tjenestekonti, API-tokens, lokale brugere, planlagte job, tillidsforhold og udrulningspipeline er alle kandidater, og hver har en ejer, der bør bekræfte det.

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

Den liste er den hurtigste måde at se, hvad værten tilbød, og hvor den kunne nå. Bevar først beviserne, efter ejeren af reaktionens proces, fordi en genopbygning ødelægger præcis det, en undersøgelse har brug for. NIST SP 800-61 Revision 3 behandler forberedelse, detektion, reaktion og genopretning som dele af én risikoproces i stedet for som en genstartsinstruktion.

Grænser, der gør den næste billigere

Fire grænser er værd at bygge, før du får brug for dem. Hold en uafhængig genopretningsvej, der ikke autentificerer gennem gatewayen. Hold signeringsmyndighed adskilt fra værten, der betjener trafik. Begræns, hvad gatewayen kan nå, så en kompromitteret gateway ikke automatisk er et kompromitteret administrationsnetværk. Og registrer, hvem der ejer hver legitimationsoplysning, så rotation er et telefonopkald i stedet for et arkæologiprojekt.

Ingen af disse forhindrer kompromittering. De afgrænser den og gør forskellen mellem en dårlig uge og et dårligt kvartal.

Relaterede artikler