Tilgjengelig utnyttelseskode for privilegieeskalering
NCSC videresender følgende varsel fra HelseCERT om offentlig tilgjengelig utnyttelseskode som på Windows gjør det mulig for ordinære AD-brukere å eskalere rettigheter til SYSTEM [1].
Det foreligger ingen sikkerhetsoppdatering, men virksomheter må implementere Microsoft sine anbefalte konfigurasjonsendringer [2]. Disse endringene har vært kjent i lengre tid, og NCSC anbefaler at virksomheter verifiserer at disse endringene er implementert.
Kort oppsummering:
En alvorlig sårbarhet som gjør det mulig for ordinære AD-brukere å bli SYSTEM (lokal administrator) har nå blitt relativt enkel å utnytte. Sårbarheten løses ved å kreve LDAP-signering på domenekontrollere.
Bakgrunn:
En sårbarhet i Windows gjør det mulig for ordinære AD-brukere å eskalere rettigheter til SYSTEM (lokal administrator). Sårbarheten er "no-fix", noe som vil si at det ikke kommer en patch for den fra Microsoft. Lukking av sårbarheten vil dermed kreve konfigurasjon hos den enkelte virksomhet.
Sårbarheten omtales som KrbRelayUp, men har så langt vi kjenner til er det ikke tildelt et eget CVE-nummer for sårbarheten.
Kode for utnyttelse av sårbarheten er også offentlig tilgjengelig [1].
Sårbarheten er tilstede om maskinene er med i Active Directory (AD) og LDAP-signering/LDAP Channel binding[2] ikke er påkrevd av domenekontrolleren. Som standard kreves ikke LDAP-signering/LDAP Channel binding.
Utnyttelse:
Det er laget er en HOWTO[3] som beskriver i detalj hvordan dette utnyttelse av sårbarheten fungerer og kan gjennomføres manuelt. KrbRelayUp gjør alle disse stegene selv.
Utnyttelse krever at angriper enten har tilgang til en maskinkonto i AD, eller kan legge til en ekstra maskin i AD - noe man som standard kan gjøre som ordinær AD-bruker.
Hvorvidt nye maskiner kan legges til styres av innstillingen ms-DS-MachineAccountQuota = X. Denne er som standard satt til "ms-DS-MachineAccountQuota = 10". Om tallet settes til 0 blokkerer dette opprettelse av nye maskiner i AD.
Deretter utnyttes "msDS-AllowedToActOnBehalfOfOtherIdentity" i kombinasjon med manglende LDAP-signering (standard) for å oppnå rettighetene til brukeren SYSTEM som er lokal administrator på målsystemet.
For en tråd om sårbarheten, inkludert lenker til mer informasjon anbefales denne fra Will Doorman [4].
Mitigering:
Anbefalt mitigering er å sette "Domain Controller: LDAP server signing requirements" til "Require signing". Dette forhindrer eskalering til SYSTEM.
Videre kan man vurdere å sette "ms-DS-MachineAccountQuota = 0". Merk at dette i seg selv ikke mitigerer denne sårbarheten, men vil forhindre at angriper kan opprette nye AD-tilkoblede maskiner på vegne av brukere uten spesielle rettigheter. Dette er et tiltak som generelt er god sikkerhetshygiene.
En konsekvens av å sette "ms-DS-MachineAccountQuota = 0" er at man trenger eksplisitte tilganger for å legge nye maskiner til i AD.
Referanser:
[1] https://github.com/Dec0ne/KrbRelayUp
[2] https://msrc.microsoft.com/update-guide/en-us/vulnerability/ADV190023
[3] https://gist.github.com/tothi/bf6c59d6de5d0c9710f23dae5750c4b9
[4] https://twitter.com/wdormann/status/1518956901391872005