2026 m. sausį FBI pradėjo operaciją „Winter SHIELD“, o pirmoji jos rekomendacija skamba taip: autentifikacijai, nuotolinei prieigai ir kritinėms sistemoms diegti suktybėms atsparius metodus – „FIDO2 standartą atitinkančius saugos raktus arba su įrenginiu susietus prieigos raktus“ („FIDO2 compliant security keys or device-bound passkeys“) (FBI). ENISA NIS2 įgyvendinimo gairės apie VPN ir administravimo sistemas sako tą patį: „kur tik įmanoma, naudokite suktybėms atsparią MFA“ („wherever possible, use phishing-resistant MFA“) (ENISA, 2025 m. birželis). Pačios „Microsoft“ dokumentacija SMS ir autentifikavimo programėlės MFA dabar apibūdina kaip „pažeidžiamą nuotolinių suktybių atakoms“ („prone to remote phishing attacks“) (Microsoft).
Jei jūsų nuotolinė prieiga yra VPN koncentratorius, prisijungimus tikrinantis per RADIUS, problemą tikriausiai jau pastebėjote: prieigos raktui čia tiesiog nėra vietos. Šiame įraše paaiškiname, kodėl taip yra, kokie trys variantai realiai lieka ir nuo ko kiekvienas iš jų neapsaugo.
Ką prieigos raktas iš tikrųjų daro
Prieigos raktas (passkey) – tai WebAuthn prisijungimo duomenys: naudotojo įrenginyje sugeneruota raktų pora, užregistruota vienai konkrečiai svetainei. Naudotojui jungiantis, naršyklė paprašo įrenginio pasirašyti svetainės atsiųstą iššūkį, o parašas apima puslapio, kurį naršyklė tuo metu iš tikrųjų rodo, kilmę (origin). Svetainė patikrina, ar paraše nurodyta kilmė yra jos pačios. Netikras prisijungimo puslapis kitame domene gauna parašą su neteisinga kilme, ir tikroji svetainė jį atmeta. Naudotojui nereikia nieko pastebėti, nes tikrinimą atlieka naršyklė (W3C WebAuthn).
Būtent tai standartai vadina atsparumu suktybėms. Dabartinė NIST apibrėžtis – „autentifikavimo protokolo gebėjimas užkirsti kelią autentifikavimo paslapčių atskleidimui … nesiremiant pareiškėjo budrumu“ („the ability of the authentication protocol to prevent the disclosure of authentication secrets … without relying on the vigilance of the claimant“), ir ji aiškiai įvardija, kas šio testo neišlaiko: slaptažodžiai, vienkartiniai kodai, push patvirtinimai ir viskas, ką naudotojas turi perrašyti, yra „neatsparūs suktybėms“ („not phishing-resistant“) (NIST SP 800-63B-4, 2025). CISA metodus rikiuoja tokia pačia tvarka: viršuje FIDO/WebAuthn ir PKI, toliau vienkartiniai kodai ir push su skaičių sutapdinimu, tada push be jo, o pačiame gale SMS (CISA).
VPN atveju svarbūs du dalykai, dėl kurių prieigos raktas šią apibrėžtį atitinka. Apsaugą suteikia naršyklė arba platformos klientas, žinantis, su kurios kilmės svetaine bendrauja, ir iššūkis bei parašas, keliaujantys pačiame prisijungimo protokole.
Kodėl RADIUS VPN prieigos raktui neturi vietos
RADIUS – protokolas, kuriuo dauguma VPN šliuzų klausia autentifikavimo serverio „ar šis prisijungimas tinkamas?“ – buvo sukurtas komutuojamo ryšio (dial-up) modemams. Access-Request užklausoje keliauja naudotojo vardas ir MD5 raktų srautu paslėptas slaptažodis arba CHAP atsakas. Jei serveriui reikia daugiau, jis siunčia Access-Challenge, kurio tekstą šliuzas „GALI rodyti“ („MAY display“) naudotojui, o šis įveda atsakymą, grįžtantį atgal slaptažodžio lauke (RFC 2865). Tai visas žodynas: žmogaus įvestos eilutės. Nėra lauko pasirašytam WebAuthn tvirtinimui, nėra kilmės, kurią būtų galima pasirašyti, nes VPN klientas neturi puslapio, ir nėra naudotojo agento, kuris tai užtikrintų.
Todėl nė vienas iš šių pats savaime VPN prisijungimui prieigos raktų pasiūlyti negali:
- MikroTik RouterOS: tik RADIUS klientas, be SAML ar OIDC (MikroTik dokumentacija).
- WireGuard: autentifikuoja lygiarangius mazgus statiniais viešaisiais raktais ir naudotojo prisijungimo neturi iš viso, todėl jam netaikomas nė vienas iš toliau aprašytų variantų; ten problema yra raktų platinimas (wireguard.com).
- OpenVPN Access Server: su RADIUS, LDAP ar PAM antrasis veiksnys yra laiku pagrįstas kodas, ir tik SAML režimas gali perduoti prisijungimą naršyklei (OpenVPN dokumentacija).
FortiGate, Palo Alto GlobalProtect ir Cisco Secure Client prieigos raktus VPN prisijungimui siūlo, ir visi trys tai daro vienodai: VPN klientas atveria naršyklę, naršyklė prisijungia prie SAML tapatybės teikėjo, prieigos raktas panaudojamas ten, o tapatybės teikėjas (IdP) praneša šliuzui, kad naudotojas patikrintas. FortiClient tam turi parinktį „external browser as user agent“ (išorinė naršyklė kaip naudotojo agentas), Cisco ASA 9.17 ir naujesnės versijos būtent dėl šios priežasties paleidžia sistemos naršyklę, o GlobalProtect naršyklės rodinį įterpia į pačią kliento programą (Fortinet, Duo for Cisco ASA, Palo Alto). „Microsoft“ apie savo RADIUS sprendimą sako tiesiai: NPS plėtinys negali atlikti skaičių sutapdinimo, o MS-CHAPv2 negali pernešti laiku pagrįsto kodo (Microsoft).
Prieigos raktas RADIUS niekada nepaliečia. Darbą atlieka naršyklė, o šliuzas pasitiki IdP žodžiu.
Trys realūs variantai
1. Prieš VPN pastatyti SAML tapatybės teikėją ir prieigos raktus naudoti jame
Šis kelias naudotojų VPN prisijungimams suteikia atsparumą suktybėms griežtąja prasme, ir jei jūsų šliuzas bei klientai jį palaiko, tai teisingas sprendimas tai problemos daliai, kuri susijusi su naršykle.
Kiek tai kainuoja: tapatybės teikėjas, palaikantis prieigos raktus, ir su juo ateinanti licencija, klientų versijos, pakankamai naujos, kad palaikytų SAML per išorinę naršyklę, prieigos raktų diegimas kiekvienam VPN naudotojui ir atkūrimo procesas prarastiems įrenginiams. Ko tai nedengia: visų sistemų, kurios SAML nemoka, įskaitant daugelyje įrenginių pačios ugniasienės administratoriaus prisijungimą, MikroTik, WireGuard ir viską, kas jungiasi be naršyklės.
2. Sertifikatai
Autentifikavimas kliento sertifikatu (EAP-TLS VPN pusėje arba kompiuterio sertifikatai įrenginyje) yra kitas metodas, kurį NIST laiko atspariu suktybėms – per tai, ką jis vadina kanalo susiejimu (channel binding) (NIST). Naudotojui nėra ko įvesti ir nėra ko persiųsti.
Kiek tai kainuoja: sertifikatų tarnyba, kiekvieno įrenginio registracija, realiai veikiantis atnaujinimas ir atšaukimas bei žmogus, kuris už visa tai atsako. CISA PKI pagrįstą MFA apibūdina kaip reikalaujančią „labai brandžios tapatybių valdymo praktikos“ („highly mature identity management practices“) ir pažymi, kad ji palaikoma nedaug kur (CISA). O kompiuterio sertifikatas įrodo, kuris įrenginys prisijungė, bet ne tai, kas prie jo sėdėjo.
3. Palikti RADIUS ir pridėti patvirtinimą telefone, kuriame matyti prisijungimas
Trečiasis kelias šliuzą ir RADIUS serverį palieka tokius, kokie yra, ir į RADIUS kelią įterpia antrą žingsnį: jūsų RADIUS serveris pirmiausia patikrina slaptažodį, ir tik jam priėmus prisijungimą naudotojas telefone gauna patvirtinimo užklausą. Užklausoje nurodyta paslauga, paskyra ir šaltinio IP adresas, o prisijungimas pavyksta tik naudotojui ją patvirtinus. Būtent tai daro Notakey auth-proxy; diegimo vadovas parodo, kaip tai padaryti su FreeRADIUS, NPS ir MikroTik User Manager.
Tai pigiausias diegti kelias, nes šliuze nesikeičia nieko, išskyrus adresą, kuriuo jis siunčia RADIUS užklausas, ir jis veikia bet kuriame šliuze, kuris prisijungimus tikrina per RADIUS, įskaitant tuos, kurie SAML neprakalbės niekada. Tai taip pat kelias, kurį aprašydami turime būti atsargiausi.
Ką jis sustabdo. Nutekėjęs, purkštas ar nulaužtas slaptažodis nebėra prisijungimas. FortiBleed – 2026 m. kampanijai prieš FortiGate VPN – nieko daugiau ir neprireikė (mūsų analizė). SMS perėmimas ir SIM apkeitimas netaikomi, nes kodo nėra. Push užtvindymas 2022 m. užpuolikus įvedė į „Cisco“ ir „Uber“ VPN: jie siuntė patvirtinimo užklausas, kol kas nors bakstelėjo „taip“ (Cisco Talos, Uber). Čia jis atsitrenkia į kortelę, kurioje matyti, kokia paskyra, į kokią paslaugą ir iš kur jungiasi, ir į užklausų dažnio ribojimą serveryje (kaip).
Ko jis nesustabdo. Jis nesustabdo persiuntimo realiuoju laiku, kai netikras VPN portalas persiunčia tikrą aukos prisijungimą, o auka patvirtina savo pačios sesiją užpuoliko ryšyje. Patvirtinimo kortelėje rodomas šaltinio IP adresas, todėl žiūrinčiam naudotojui tarpininkas matomas, bet apsauga priklauso nuo to, ar naudotojas žiūri, o NIST apibrėžtis būtent tokį rėmimąsi ir atmeta. Push patvirtinimas nėra atsparus suktybėms CISA prasme – nei su skaičių sutapdinimu, nei be jo – ir tai sakome savo saugumo puslapyje, užuot pasisavinę šią etiketę.
Kaip įsilaužimai atrodė iš tikrųjų
Variantus naudinga tikrinti ne pagal grėsmių modelį, o pagal tai, kaip į VPN ir nuotolinę prieigą iš tikrųjų buvo įsilaužta.
| Incidentas | Kaip užpuolikas pateko | Kuris variantas būtų sustabdęs |
|---|---|---|
| Colonial Pipeline, 2021 m. | Sena VPN paskyra su slaptažodžiu ir be antro veiksnio (parodymai) | Bet kuris iš trijų |
| Change Healthcare, 2024 m. | Citrix nuotolinės prieigos portalas be MFA (parodymai) | Bet kuris iš trijų |
| FortiBleed, 2026 m. | Purkšti, nutekėję ir nulaužti FortiGate slaptažodžiai (FBI/USSS) | Bet kuris iš trijų |
| Cisco, Uber, 2022 m. | Pavogtas slaptažodis, tada push užklausos, kol viena buvo patvirtinta | Prieigos raktai, sertifikatai; perskaitoma patvirtinimo užklausa parodo, kad jos niekas nepradėjo |
| Scattered Spider, 2023 m. | Netikri SSO puslapiai, SIM apkeitimai, push užtvindymas prieš VPN ir žiniatinklio paštą (CISA AA23-320A) | Prieigos raktai ir sertifikatai – visiškai; patvirtinimas parodo tarpininką |
| 0ktapus, 2022 m. | Netikri Okta puslapiai, realiuoju laiku persiunčiantys slaptažodžius ir vienkartinius kodus (Cloudflare) | Tik prieigos raktai ir sertifikatai |
Trims iš šešių jokio MFA apėjimo neprireikė: MFA tiesiog nebuvo. Sąžiningai perskaičius lentelę, išvada tokia: didžiausia žala vis dar slypi tarpe tarp „tik slaptažodžio“ ir „bet kokio antrojo veiksnio“, o tarpas tarp perskaitomo patvirtinimo ir prieigos rakto svarbiausias toms paskyroms, kurių prisijungimus ryžtingas užpuolikas persiųs realiuoju laiku.
Kaip apsispręsti
- Ugniasienių ir šliuzų administratorių paskyros. Būtent į šias paskyras taikėsi FortiBleed ir būtent jas „Winter SHIELD“ liepia apsaugoti pirmiausia. Jei valdymo sąsaja palaiko FIDO2 raktus arba SAML prisijungimą su prieigos raktais, naudokite juos. Jei ji moka tik RADIUS, patvirtinimas telefone prisijungiant administratoriui yra kur kas geresnis už vien slaptažodį, o ypač – už bendrą slaptažodį.
- Naudotojų VPN šliuze, kuris moka SAML per išorinę naršyklę. Prieigos raktus dėkite tapatybės teikėjo pusėje. Tai griežtasis atsakymas, ir jis šiandien prieinamas FortiGate, GlobalProtect ir Cisco įrangoje.
- Naudotojų VPN tik RADIUS mokančioje įrangoje, tokioje kaip MikroTik ar seni koncentratoriai. Renkatės tarp sertifikatų ir patvirtinimo telefone. Atsparumu suktybėms laimi sertifikatai, jei PKI jau turite. Jei ne, perskaitomas patvirtinimas jau šiandien pasirūpina, kad vien slaptažodžio prisijungti nebepakaktų, ir pakeičia SMS kodus bei aklus push pranešimus, o per naršyklę vykstančius prisijungimus į prieigos raktus galėsite perkelti ir vėliau.
- Kad ir ką pasirinktumėte, žiūrėkite į visą kelią. 2022 m. įsilaužimas į „Cisco“ prasidėjo nuo asmeninės „Google“ paskyros, sinchronizavusios darbo slaptažodį; VPN buvo antrasis žingsnis. Jei MFA yra VPN, bet jos nėra žiniatinklio pašte ar nuotoliniame darbalaukyje, užpuolikas tiesiog pasibels į gretimas duris.
Notakey siūlo trečiąjį kelią, ir mes aiškiai sakome, kurioje CISA skalės pakopoje jis yra. Jei jūsų šliuzas moka RADIUS, VPN 2FA vadovas per vieną popietę jus nuves iki pirmojo patvirtinimo telefone, o įrenginys veikia jūsų pačių infrastruktūroje arba mūsų debesyje. Išbandykite tiesioginę demonstraciją, kad pamatytumėte, kaip perskaitomas patvirtinimas atrodo jūsų pačių telefone, arba užsisakykite demonstraciją, ir mes jūsų VPN, ugniasienės administratoriaus ir nuotolinio darbalaukio prisijungimus priderinsime prie bandomojo diegimo.