Onemogočanje preverjanja pristnosti NTLM v domeni Windows

NTLM (NT LAN Manager) je precej star Microsoftov protokol za preverjanje pristnosti, ki se je pojavil v sistemu Windows NT. Čeprav je Microsoft varnejši protokol za preverjanje pristnosti Kerberos predstavil že v operacijskem sistemu Windows 2000, se NTLM (predvsem NTLMv2) še vedno pogosto uporablja za preverjanje pristnosti v omrežjih Windows. V tem članku bomo preučili značilnosti postopka onemogočanja protokola NTLMv1 in NTLMv2 ter preklopa na Kerberos v domeni Active Directory.

Glavna težava NTLMv1 - šibko šifriranje, shranjevanje hash-ja gesla v RAM-u v storitvi LSA, ki ga lahko izvlečejo različni pripomočki (na primer mimikatz) in uporabi hash za nadaljnje napade, pomanjkanje medsebojne avtentifikacije odjemalca in strežnika, zaradi česar bodo napadi prestrezanja podatkov in nepooblaščen dostop do omrežnih virov povsem resnični (pripomočki, kot je Responder, lahko prestrežejo podatke NTLM, ki se prenašajo po omrežju, in jih uporabljajo za dostop do omrežnih virov) in številne druge ranljivosti.

Nekatere od teh pomanjkljivosti so odpravljene v novejši različici. NTLMv2, ki uporablja več kriptografskih algoritmov šifriranja in lahko prepreči priljubljene napade na NTLM. Od Windows 7 / Windows Server 2008 R2 je uporaba NTLMv1 in LM za avtorizacijo privzeto izklopljena.

Vsebina:

  • Preklop na NTLMv2
  • Revizija dogodkov overjanja NTLM v domeni
  • Onemogočanje NTLM v domeni Active Directory

Preklop na NTLMv2

Če razmišljate o popolni opustitvi NTLM v svoji domeni, se morate najprej prepričati, da ne uporabljate njene bolj ranljive različice, NTLMv1. V vašem omrežju verjetno obstaja več starih naprav ali storitev, ki še vedno uporabljajo avtentikacijo NTLMv1 namesto NTLMv2 (ali Kerberos). Preden se zatečete k njegovi popolni zaustavitvi, preberite razdelek tega članka o revidiranju avtorizacijskih dogodkov z uporabo NTLM.

Potencialne težave pri onemogočenju NTLMv1 so lahko majhni odprtokodni izdelki, različni stari modeli omrežnih optičnih bralnikov (ki zložijo skeniranje v mrežne mape), nekatere naprave NAS in druga zastarela oprema, programska oprema in OS.

Najprej mora skrbnik domene poskrbeti, da je prepovedano uporabljati NTLM ali LM za avtorizacijo v svojem omrežju, saj v nekaterih primerih napadalec lahko uporabi posebne zahteve, da prejme odgovor na zahtevo NTLM / LM.

Vrsta preverjanja pristnosti je mogoče nastaviti z uporabo domene (ali lokalnega) pravilnika. Odprite konzolo za upravljanje domene in uredite privzeto politiko domen. Pojdite na razdelek Računalniške konfiguracije -> Politike -> Nastavitve sistema Windows -> Varnostne nastavitve -> Lokalne politike -> Varnostne možnosti in poiščite politiko

Varnost omrežja: raven pristnosti LAN Manager (Varnost omrežja: Raven pristnosti LAN managerja).

V nastavitvah pravilnika je 6 možnosti:

  • Pošljite LM in NTLM odgovore;
  • Pošljite LM in NTLM odgovore - po dogovoru uporabite zaščito seje NTLMv2;
  • Pošlji samo odgovor NTLM;
  • Pošlji samo odgovor NTLMv2;
  • Pošlji samo odgovor NTLMv2. Zavrni LM;
  • Pošlji samo odgovor NTLMv2. Zavrni LM in NTLM.

Politike uporabe avtentikacije NTLM so urejene v naraščajočem zaporedju varnosti. Privzeta nastavitev za Windows 7 in novejše je Pošlji samo odgovor NTLMv2 (Pošlji samo odgovor NTLMv2). S to nastavitvijo računalniki odjemalcev uporabljajo avtentikacijo NTLMv2, vendar krmilniki domen sprejemajo zahteve LM, NTLM in NTLMv2.

NTLMv2 se lahko uporablja, če protokol Kerberos ni deloval in pri nekaterih operacijah (na primer pri upravljanju lokalnih računov in skupin v računalnikih z domenami) ali v delovnih skupinah.

Vrednost pravilnika lahko spremenite v varnejšo možnost 6 - »Pošlji samo odgovor NTLMv2. Zavrni LM in NTLM" V skladu s tem pravilnikom bodo krmilniki domen tudi zavrnili zahteve LM in NTLM..

Preko registra lahko tudi onemogočite NTLMv1. Za to v branži

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Lsa ustvariti parameter z imenom DWORD LmCompatibilityLevel in vrednost od 0 do 5. Vrednost 5 ustreza vrednosti politike "Pošlji samo odgovor NTLMv2. Zavrni LM in NTLM".

V istem razdelku GPO preverite, ali imate omogočen pravilnik Varnost omrežja: Ali gesla shranijo vrednost Hash Lan pri naslednji spremembi gesla (Varnost omrežja: Ne shranjujte vrednosti hash-ja LAN managerja ob naslednji spremembi gesla). Ta pravilnik je privzeto omogočen, začenši z operacijskim sistemom Windows Vista / Windows Server 2008 in preprečuje ustvarjanje mešanice LM.

Ne pozabite uporabiti tega pravilnika za krmilnike domen..

Če ste prepričani, da ne uporabljate NTLMv1, lahko nadaljujete in poskusite opustiti NTLMv2. NTLMv2, čeprav bolj varen protokol za preverjanje pristnosti, Kerberos še vedno znatno izgubi v smislu varnosti (čeprav ima NTLMv2 manj ranljivosti kot prva različica protokola, še vedno obstajajo možnosti za prestrezanje in ponovno uporabo podatkov in medsebojne avtentikacije ni).

Glavno tveganje za onemogočanje NTLM je možna uporaba zastarelih ali nepravilno konfiguriranih aplikacij v domeni, ki še vedno lahko uporabljajo overjanje NTLM, zato jih boste morali posodobiti ali konfigurirati na poseben način, da preklopite na Kerberos.

Revizija dogodkov overjanja NTLM v domeni

Preden popolnoma onemogočite NTLM v domeni in preklopite na Kerberos, je priporočljivo preveriti, ali v domeni ni več aplikacij, ki zahtevajo in uporabljajo overjanje NTLM.

Za sledenje računov in aplikacij, ki uporabljajo avtentikacijo NTLM, lahko omogočite revizijske politike na vseh računalnikih, ki uporabljajo GPO. V razdelku Konfiguracija računalnika -> Nastavitve sistema Windows -> Varnostne nastavitve -> Lokalne politike -> Varnostne možnosti, poiščite in omogočite pravilnik Varnost omrežja: Omejite NTLM: Preveri pristnost NTLM v tej domeni, nastavitev svoje vrednosti na Omogoči vse.

Pravilnik omogočite na enak način. Varnost omrežja: Omejite NTLM: Revidirajte dohodni promet NTLM, nastavitev svoje vrednosti na Omogoči revizijo za račune domen.

Po vključitvi teh pravilnikov se dogodki, ki uporabljajo overjanje NTLM, zabeležijo v dnevnik dogodkov prikazovalnik dogodkov Dnevniki aplikacij in storitev -> Microsoft -> Windows -> NTLM.

Lahko analizirate dogodke na vsakem strežniku ali zberete vse dogodke v osrednjem dnevniku dogodkov.

Zbirati morate dogodke iz sistema Microsoft-Windows-Security-Auditing z ID-jem dogodka 4624 - Račun je bil uspešno prijavljen. Bodite pozorni na informacije v razdelku »Podrobne informacije o pristnosti" Če je na vrsti Paket za preverjanje pristnosti naveden NTLM, potem je bil za preverjanje pristnosti uporabnika uporabljen protokol NTLM.

Zdaj bodite pozorni na pomen Ime paketa (samo NTLM). V njem mora biti navedeno, kateri protokol (LM, NTLMv1 ali NTLMv2) je bil uporabljen za preverjanje pristnosti. Tako morate prepoznati vse strežnike / aplikacije, ki uporabljajo starejši protokol.

Na primer, če želite iskati vse avtentikacijske dogodke za NTLMv1 po vseh krmilnikih domen, lahko uporabite naslednji skript PowerShell:

$ ADDCs = Get-ADDomainController -filter * -Server winitpro.ru
$ Now = Pridobljeni datum
$ Včeraj = $ zdaj.Dodaj (-1)
$ NewOutputFile = "c: \ ps \ dogodki \ $ ($ včeraj.ToString ('yyyyMMdd')) _ AD_NTLMv1_events.log"
funkcija GetEvents ($ DC)
Host pisanja "Iskanje po prijavi" $ DC.HostName
$ Events = Get-EventLog "Varnost" - Po $ včeraj.Datum -Pred $ $.Date -ComputerName $ DC.HostName -Massage "* V1 *" -snovka 4624
foreach ($ dogodek v $ dogodkih)
Host za pisanje $ DC.HostName $ Event.EventID $ Event.TimeGenerated
Out-File -FilePath $ NewOutputFile -InputObject "$ ($ Event.EventID), $ ($ Event.MachineName), $ ($ Event.TimeGenerated), $ ($ Event.ReplacementStrings), ($ Event.message)" - Doda


foreach ($ DC v $ ADDC) GetEvents ($ DC)

Ko najdete uporabnike in aplikacije, ki uporabljajo NTLM v vaši domeni, jih poskusite preklopiti na uporabo Kerberos (po možnosti z uporabo SPN). Nekatere aplikacije je treba konfigurirati, da pooblastilo Kerberos deluje (glejte pooblastilo Kerberos v IIS, z uporabo dovoljenja Kerberos v brskalnikih). Iz osebnih izkušenj: tudi resnično veliki komercialni izdelki včasih še niso prešli iz uporabe NTLM na Kerberos, nekateri izdelki zahtevajo posodobitev ali spremembe konfiguracije. Vse se nanaša na določitev, katere aplikacije uporabljajo avtentikacijo NTLM, zdaj pa lahko določite to programsko opremo in naprave.

Za avtorizacijo v Kerberosu morate uporabiti ime strežnika DNS in ne IP naslov. Če pri povezovanju z viri določite naslov IP, se uporablja overjanje NTLM.

Tiste aplikacije, ki jih ni mogoče preklopiti na uporabo NTLM, lahko dodamo izjeme, kar jim omogoča uporabo avtentikacije NTLM, tudi če je na ravni domene onemogočena. Za to se uporablja politika. Varnost omrežja: Omejite NTLM: Dodajte izjeme strežnika za overjanje NTLM v tej domeni. Imena strežnikov za preverjanje pristnosti, na katerih se NTLM lahko uporablja za preverjanje pristnosti, je treba dodati na seznam izjem (seveda v idealnem primeru mora biti ta seznam izjem prazen). Uporabite lahko nadomestni znak *.

Onemogočanje NTLM v domeni Active Directory

Če želite preveriti, kako preverjanje pristnosti deluje v različnih aplikacijah v domeni, ne da bi uporabljali NTLM, lahko v skupino domen dodate potrebne uporabniške račune

Zaščiteni uporabniki (skupina je na voljo od sistema Windows Server 2012 R2), katerih člane je mogoče overiti samo s protokolom Kerberos (NTLM, Digest Authentication ali CredSSP ni mogoče uporabiti). Tako lahko preverite pristnost uporabnikov Kerberos v različnih aplikacijah.

Zdaj lahko NTLM v domeni popolnoma onemogočite z uporabo skupinskih pravilnikov Varnost omrežja: Omejite NTLM: avtentikacijo NTLM v tej domeni.

V tem pravilniku je na voljo 5 možnosti:

  • Onemogoči: pravilnik je onemogočen (avtentikacija NTLM v domeni je dovoljena);
  • Zavrni za domenske račune za domenske strežnike: krmilniki domen prepovedujejo poskuse overjanja NTLM za vse strežnike pod domenskimi računi, vrnjena je napaka "NTLM je blokirana";
  • Zavrni za račune domen: krmilniki domen prepovedujejo poskuse overjanja NTLM za vse domene, vrne se napaka "NTLM je blokiran";
  • Zavrni za strežnike domen: Zahteve za overjanje NTLM za vse strežnike so zavrnjene;
  • Zavrni vse: krmilniki domen blokirajo vse zahteve NTLM za vse strežnike in račune.

Za nadaljnjo ločitev zaščite v AD-ju priporočam, da preberete članke "Zaščita pred nalaganjem gesla iz pomnilnika s pripomočki A la Mimikatz", "Zaščita skrbniških računov", onemogočanje LLMNR in NetBIOS prek TCP / IP.