Seadme koodivoog — ründevektor, mis möödub MFA-st
Miks see teema on oluline
2025. aasta veebruaris avaldas Microsoft Threat Intelligence hoiatuse: Venemaaga seotud ründegrupp Storm-2372 kasutab organisatsioonide kompromiteerimiseks seadme koodivogu (device code flow) — Microsofti enda legitiimset autentimisprotokolli.
See ei ole tavaline õngitsus. Ohver ei sisesta parooli võltslehele — ta autendib end ise läbi õige Microsofti platvormi, läbib MFA ja annab teadmatult ründajale kehtiva sessiooni. Viirusetõrje ei reageeri, sest midagi pahatahtlikku ei käivitu.
2025. aasta teises pooles levis tehnika riiklikelt ründegruppidelt tavakurjategijateni. 2026. aasta alguseks on olukord plahvatuslikult muutunud: Push Security andmetel on seadme koodivoo õngitsusrünnakud kasvanud 37 korda. Põhjus on lihtne — turule on tulnud vähemalt 11 phishing-as-a-service platvormi, mis pakuvad seda ründetüüpi valmislahendusena. Neist suurim, EvilTokens, ilmus veebruaris 2026 ja on juba tabanud üle 340 organisatsiooni viies riigis. Ründaja ei pea enam olema tehniline — ta ostab lihtsalt teenuse.
Kui sinu organisatsioon kasutab Microsoft 365 keskkonda, on mõistlik see ründevektor läbi mõelda ja sulgeda.
Kuidas rünnak töötab
Seadme koodivoog (RFC 8628) loodi seadmetele, millel pole klaviatuuri: nutitelerid, mängukonsoolid, IoT-seadmed. Kasutaja avab oma arvutis brauseri, sisestab koodi aadressil microsoft.com/devicelogin ja seade saab ligipääsu tema kontole. Sarnane lahendus võib olla paljudele tuttav nutiteleri kaudu YouTube’i sisse logides.
Ründaja kasutab sama mehhanismi — ainult et koodi ei taotle nutiteler, vaid ründaja ise.
Tüüpiline stsenaarium:
-
Ründaja võtab ohvriga ühendust e-kirja, Teams-sõnumi, WhatsAppi või Signali kaudu — sageli kellegi tuttava nime alt.
-
Sõnumis on kutse koosolekule või jagatud dokumendile, koos koodiga.
-
Ohver avab
microsoft.com/devicelogin— Microsofti pärisleht, mitte võltsing. -
Ohver sisestab koodi ja läbib MFA.
-
Ründaja saab kehtiva access token’i ja refresh token’i. MFA’d ei ole ründajal enam vaja.
Miks see nii hästi töötab?
Esiteks — ohver suhtleb kogu autentimise ajal ainult Microsofti enda leheküljega. Sertifikaat on õige, URL on õige, MFA-päring tuleb õigest rakendusest. Inimese jaoks pole ühtegi tavapärast hoiatusmärki.
Teiseks — refresh token annab ründajale pikaajalise ligipääsu. Vaikimisi kehtib see kuni 90 päeva ja võimaldab pääseda ligi ohvri meilidele, SharePointi failidele, Teamsi vestlustele ja kõigile ühendatud rakendustele — ilma et ründaja peaks uuesti autentima. Peale olukorra tuvastamist ning reageerides ei aita üksi ka parooli vahetamine, sest ründajal on token, mitte parool.
Kaitsemeetmed prioriteedi järgi
1. Blokeeri seadme koodivoog Conditional Access poliitikaga
Kõige tõhusam meede. Enamik organisatsioone ei vaja seadme koodivogu üldse — kui te ei kasuta sisselogimiseks klaviatuurita seadmeid, saab selle täielikult blokeerida.
Conditional Access poliitikates saab autentimisvoogude tingimustes (Authentication Flows) seadme koodivoo keelata. Põhimõte on lihtne: blokeeri kõigile kasutajatele, välista ainult hädaolukorra kontod ja need teenuskontod, mis seadme koodivogu päriselt vajavad. Alusta alati report-only režiimis ja jälgi logisid vähemalt 1–2 nädalat enne sisselülitamist — nii näed, kas blokeering mõjutab midagi olulist (vt allpool „Enne blokeerimist: kaardista olemasolev kasutus”).
Täpsem juhend: Block authentication flows with Conditional Access policy (Microsoft Learn).
Kontrolli enne, kas Microsoft on selle juba sinu eest teinud. Microsoft on alates 2024. aasta lõpust automaatselt välja rullimas hallatud poliitikaid (Microsoft-managed policies), sh „Block device code flow”. Vaata Conditional Access poliitikate loendist, kas Created by veerus on mõni poliitika „Microsoft” alt. Kui jah — piisab olemasoleva ülevaatamisest ja sisselülitamisest, uut pole vaja luua. Loe lähemalt: Microsoft-managed Conditional Access policies.
NB: Conditional Access nõuab Entra ID P1 litsentsi. Vt litsentside ülevaadet allpool.
2. Piira OAuth rakenduste volitamine
Keela kasutajatel ise kolmanda osapoole rakendusi volitada (admin consent required). Isegi kui ründaja saab tokeni, takistab see tema loodud rakenduste ligipääsu organisatsiooni andmetele.
3. Lülita sisse riskipõhine blokeerimine
Entra ID Identity Protection tuvastab anomaaliaid — sisselogimist tundmatust asukohast, „impossible travel” mustreid — ja peatab kahtlased sessioonid automaatselt.
NB: Identity Protection nõuab Entra ID P2 litsentsi.
4. Kaalu õngitsuskindlat MFA-d
FIDO2 riistvaravõtmed (nt YubiKey) või passkey ei blokeeri otseselt seadme koodivoo rünnakut, sest ohver autendib end ise. Küll aga sulgevad need teised ründevektorid, mis samuti tavapärasest MFA-st mööda lähevad — adversary-in-the-middle ja muud token’i varguse tehnikad.
5. Teadlikkus
Lihtsaim meede: seadmekoodi sisestab ainult see, kes ise selle protsessi algatas. Kui keegi saadab koodi koos palvega see sisestada — see on punane lipp, olenemata saatjast.
Litsentside ülevaade
Tihti kuulen küsimust: „Kas meie litsents seda üldse võimaldab?”
| Kaitsemeede | Vajalik litsents | Hind (u) |
|---|---|---|
| Conditional Access (seadme koodivoo blokeerimine) | Entra ID P1 (M365 Business Premium sisaldab) | ~6 €/kasutaja/kuu eraldi |
| Identity Protection (riskipõhine blokeerimine) | Entra ID P2 | ~9 €/kasutaja/kuu eraldi |
| Defender for Office 365 (täiustatud meilifiltrid) | M365 Business Premium | ~22 €/kasutaja/kuu komplektis |
| Põhiline MFA | Kõik M365 litsentsid | 0 |
Praktiline soovitus: Business Basic ja Standard litsentsid ei sisalda Conditional Access’i. Kaks teed:
-
Tõstke kõik kasutajad Business Premium’ile — mõistlik kuni ~300 kasutajat.
-
Ostke Entra ID P1 eraldi kõrgeima riskiga kontodele — administraatorid, juhid, raamatupidajad.
Enne blokeerimist: kaardista olemasolev kasutus
Ära blokeeri pimesi. Esmalt selgita välja, kas sinu organisatsioonis kasutatakse seadme koodivogu legitiimselt. Tüüpilised seadmed, mis seda vajavad:
-
Microsoft Teams Rooms seadmed (konverentsiruumi ekraanid ja kaamerad)
-
Surface Hub tahvelarvutid
-
Printerid, mis vajavad Microsoft 365 autentimist (nt scan-to-email)
-
CLI-tööriistad nagu Azure CLI ja Azure PowerShell (arendajad kasutavad sageli)
Kuidas kontrollida: ava Entra ID sign-in logid ja filtreeri Authentication Protocol → Device code. Vaata viimase 90 päeva tulemusi — millised kasutajad ja rakendused on seda kasutanud? Log Analytics tööruumis saab sama tulemuse KQL päringuga, filtreerides AuthenticationProtocol == "deviceCode".
Kui leiad legitiimseid seadmeid — loo neile teenuskontod ja lisa need Conditional Access poliitika välistuste nimekirja. Auditeeri välistusi regulaarselt.
Oluline nüanss: Conditional Access jälgib sessiooni tasemel (protocol tracking). Kui kasutaja logib sisse seadme koodivoo kaudu ja avab samas sessioonis teisi rakendusi, kehtib blokeering ka nende jaoks. Kui teenus lakkab pärast poliitika sisselülitamist töötamast, kontrolli sign-in logides veergu Original transfer method.
Kuidas avastada võimalikku kompromiteerimist
Entra ID sisselogimislogid — filtreeri autentimisprotokoll „Device code” järgi. Iga selline kirje väärib tähelepanu, eriti kui pärineb tundmatust IP-aadressist või asukohast. „Impossible travel” märgistega sündmused — näiteks Tallinn kell 9.00, Moskva kell 9.05 — on üheselt kahtlased.
OAuth rakenduste volitused — kontrolli Enterprise applications loendist, kas seal on rakendusi, mida keegi pole teadlikult volitanud. Ründajad loovad sageli OAuth rakenduse, mis hoiab ligipääsu ka pärast parooli vahetust.
Microsoft Purview Audit logib autentimissündmused organisatsiooni tasemel. Täpsed otsingufiltrid muutuvad aeg-ajalt — kontrolli alati Microsofti kehtivat dokumentatsiooni.
Reageerimine kompromiteerimisele
Kiirus loeb — refresh token annab ründajale pideva ligipääsu.
-
Tühista kasutaja kõik sessioonid — Entra ID → Users → Revoke sessions.
-
Eemalda kahtlaste OAuth rakenduste volitused.
-
Vaheta parool ja sunni kõik seansid lõppema.
-
Kaardista mõjuulatus — millised meilid, failid ja sõnumid olid ligipääsetavad?
-
Kaasa spetsialist — mõjuulatuse hindamine ja juurpõhjuse analüüs nõuab kogemust.
Kokkuvõte
Seadme koodivoo rünnak kasutab Microsofti enda legitiimset protokolli ja möödub MFA-st, sest ohver autendib end ise. Tehnika on lihtsalt teostatav, raskesti avastatav ja annab ründajale pikaajalise ligipääsu.
Kolm prioriteeti:
-
Blokeeri seadme koodivoog Conditional Access poliitikaga — see eemaldab ründevektori.
-
Piira OAuth volitamine — see takistab ligipääsu kuritarvitamist.
-
Kontrolli logisid — vaata, kas seadme koodivoo autentimist on teie keskkonnas esinenud.
Kui soovid hinnata, kas sinu organisatsioon on selle ründevektori suhtes haavatav, või vajad abi Conditional Access poliitikate ülevaatamisel — võta ühendust. Aitan tekitada selguse ja seada õiged kaitsemeetmed.