Dar prieš kelerius metus SMS kodas prisijungiant buvo laikomas geru saugumo žingsniu, ir daugelis Lietuvos įmonių jį įsidiegė būtent tokiu pavidalu: slaptažodis plius šešių skaitmenų kodas telefone. Šiandien bankai, Microsoft ir kibernetinio saugumo institucijos SMS laiko silpniausia daugiafaktorinio autentifikavimo (MFA) forma ir rekomenduoja nuo jos pereiti.
Priežastis paprasta: užpuolikai išmoko SMS kodą apeiti dviem būdais, kurie nereikalauja nei didelių išteklių, nei gilių techninių žinių. Tuo pat metu atsirado metodų, kurie atsparūs net tada, kai darbuotojas pats įveda kodą į netikrą puslapį.
Straipsnyje paaiškiname, kodėl SMS nebepakanka, kuo skiriasi kiti MFA metodai, kaip Microsoft Entra ID leidžia reikalauti stipresnių metodų tik ten, kur reikia, ir kaip pereiti be pirmadienio ryto chaoso.
Du būdai, kuriais apeinamas SMS kodas
SIM kortelės keitimas
Užpuolikas kreipiasi į mobiliojo ryšio operatorių apsimesdamas jūsų darbuotoju – turi vardą, asmens kodą (dažnai nutekėjusį iš kitų svetainių) ir įtikinamą istoriją apie pamestą telefoną. Operatorius išduoda naują SIM kortelę su tuo pačiu numeriu. Nuo tos akimirkos visi SMS kodai ateina užpuolikui, o darbuotojo telefonas tiesiog praranda ryšį – ir dažnai tai pastebima tik po kelių valandų. Operatoriai šią procedūrą sugriežtino, bet rizika išlieka, ypač kai darbuotojas naudoja asmeninį numerį, kurio įmonė nekontroliuoja.
Phishing proxy
Dar dažnesnis būdas. Darbuotojas gauna laišką su nuoroda į puslapį, kuris atrodo lygiai kaip Microsoft 365 prisijungimas. Tai ne kopija, o tarpininkas (proxy): viską, ką darbuotojas įveda, puslapis realiu laiku perduoda tikram Microsoft serveriui, o atsakymus grąžina atgal. Darbuotojas įveda slaptažodį – perduodamas. Gauna SMS kodą, įveda – perduodamas. Microsoft išduoda sesijos žetoną (token) – jį pasiima užpuolikas. Darbuotojas mato, kad prisijungė sėkmingai, ir nieko neįtaria.
Svarbu suprasti: antrasis būdas apeina ne tik SMS, bet ir programėlių kodus bei paprastą push patvirtinimą. Bet kuris metodas, kurį galima perduoti tarpininkui, yra pažeidžiamas.
Metodai nuo silpniausio iki stipriausio
- SMS kodas. Pažeidžiamas abiem būdais. Vienintelis pranašumas – nereikia programėlės.
- Programėlės kodas (TOTP, pavyzdžiui, Microsoft Authenticator). Apsaugo nuo SIM keitimo, bet ne nuo phishing proxy – kodą darbuotojas gali įvesti į netikrą puslapį.
- Push su numerio patvirtinimu (number matching). Programėlė rodo du skaitmenis ekrane, kuriame jungiamasi, ir prašo juos įvesti telefone. Apsaugo nuo atsitiktinio patvirtinimo, kai užpuolikas siunčia dešimtis užklausų tikėdamasis, kad darbuotojas vieną paspaus, bet proxy scenarijuje numeris vis tiek perduodamas.
- FIDO2 ir passkey raktai. Fizinis USB ar NFC raktas arba telefone saugomas passkey. Kriptografinis atsakymas surišamas su tikru puslapio adresu – netikram domenui raktas tiesiog neatsakys. Tai vienintelis metodas, atsparus phishing proxy, ir Microsoft jį vadina atspariu phishing (phishing-resistant).
Praktikoje įmonei realus tikslas – Authenticator su numerio patvirtinimu visiems ir FIDO2 ar passkey tiems, kurių paskyros vertingiausios: administratoriams, vadovams, finansų darbuotojams.
Dažnas klausimas – ar darbuotojai sutiks diegti Authenticator į asmeninį telefoną. Mūsų praktikoje sutinka beveik visi, jei paaiškinama, kad programėlė nemato kitų telefono duomenų ir įmonė per ją telefono nevaldo. Tiems, kurie nesutinka, lieka fizinis FIDO2 raktas – jis neturi nei akumuliatoriaus, nei programinės įrangos, kurią reikėtų atnaujinti, ir kainuoja mažiau nei vienos darbo dienos prastova.
Entra ID sąlyginė prieiga: griežtumas ten, kur reikia
Reikalauti FIDO2 rakto kiekvieną kartą atidarant Teams pokalbį – netikslinga, ir darbuotojai greitai ims ieškoti būdų apeiti. Microsoft Entra ID sąlyginė prieiga (Conditional Access) leidžia nustatyti taisykles, kada kokio metodo reikia.
Tipinės taisyklės, kurias diegiame klientams:
- iš įmonės valdomo ir politiką atitinkančio kompiuterio – MFA kartą per kelias dienas;
- iš nežinomo įrenginio ar kitos šalies – MFA kiekvieną kartą ir tik phishing atsparus metodas;
- administratoriaus vaidmenims – visada FIDO2 arba passkey;
- senų protokolų (POP, IMAP, SMTP su slaptažodžiu) blokavimas, nes jie MFA apskritai nepalaiko;
- rizikingo prisijungimo (pavyzdžiui, iš dviejų šalių per valandą) blokavimas su privalomu slaptažodžio keitimu.
Taisyklės nustatomos centralizuotai ir galioja Microsoft 365, Azure ir bet kuriai programai, prijungtai per Entra ID. Tai aprašome Microsoft Entra ID paslaugos puslapyje, o platesnę pašto ir paskyrų apsaugą – Microsoft 365 saugumo aprašyme.
Kaip įdiegti be chaoso
Didžiausia MFA diegimo rizika – ne technika, o pirmadienio rytas, kai 80 darbuotojų negali prisijungti ir skambina vienu metu. Mūsų praktikoje perėjimas vyksta taip:
- Inventorius. Kas naudoja SMS, kas Authenticator, kas nieko. Entra ID ataskaitos tai parodo per minutes.
- Pilotas. IT komanda ir 5–10 darbuotojų iš skirtingų skyrių pereina pirmi. Čia išaiškėja, kurios programos nesuderinamos.
- Registracijos kampanija. Entra ID leidžia rodyti darbuotojui priminimą susikonfigūruoti Authenticator prisijungiant, su galimybe atidėti kelias dienas. Daugumai užtenka savaitės.
- Vieno puslapio instrukcija ir sutarti laikai, kai helpdesk budi papildomai. Kiekvienas darbuotojas turi žinoti, kam skambinti, kai pametė telefoną.
- Perjungimas skyriais, ne visai įmonei vienu metu. Finansai pirmieji, nes jų rizika didžiausia.
- Laikinas prieigos kodas (Temporary Access Pass) naujiems darbuotojams ir pametusiems telefoną – kad nereikėtų grąžinti SMS „laikinai“.
Paskutinis žingsnis dažnai praleidžiamas, ir „laikinas“ SMS lieka metams.
Ką daryti su senomis sistemomis
Ne visos sistemos moka MFA. Sena apskaitos programa, VPN įrenginys be modernių protokolų, gamybinė sistema su vietine paskyra. Variantai:
- Perkelti prieigą už Entra ID. Daug programų galima prijungti per SAML ar OIDC, net jei jos pačios MFA neturi – tada MFA vykdo Entra ID prieš įleidžiant.
- Pastatyti VPN su MFA prieš sistemą. Jei pati sistema pasiekiama tik iš vidinio tinklo, o į tinklą patenkama tik per VPN su antru faktoriumi – rezultatas praktiškai tas pats. Būtent taip veikia Rivile Cloud – apskaita pasiekiama per VPN su 2FA, kuris įskaičiuotas į paslaugą.
- Izoliuoti. Jei sistema nei viena, nei kita – apriboti prieigą iš konkrečių įrenginių ir fiksuoti prisijungimus, kol sistema bus pakeista.
- Įtraukti į rizikų registrą. TIS2 ir DORA kontekste svarbu ne tik įdiegti, bet ir dokumentuoti, kodėl viena sistema laikinai yra išimtis ir kada tai bus pašalinta.
Kuri iš šių išeičių tinka, sprendžiame pagal tai, kiek žmonių sistema naudojasi ir kokius duomenis ji laiko. Apskaitos sistemai su visų darbuotojų atlyginimais izoliavimo nepakanka; vidinei laiko apskaitos lentelei – pakanka, kol ji bus pakeista.
Nuo ko pradėti
- Entra ID ataskaitoje pasitikrinkite, kiek paskyrų vis dar naudoja SMS kaip vienintelį antrą faktorių.
- Išjunkite senus protokolus – tai vienas pakeitimas, kuris uždaro didelę dalį atakų.
- Administratoriams ir finansų darbuotojams užsakykite FIDO2 raktus; tai nedidelė investicija palyginti su viena sėkminga ataka.
- Sukurkite sąlyginės prieigos taisykles pilotinei grupei ir stebėkite savaitę, kas lūžta.
- Jei neturite, kas tai administruotų, perėjimą ir vėlesnę priežiūrą atliekame kaip IT priežiūros paslaugos dalį – įskaitant helpdesk, kai darbuotojas pametė telefoną.