Met CVE-2023-23397 kan een aanvaller een e-mail versturen met een schadelijke payload, zoals een UNC-locatie onder controle van de aanvaller. Dit zorgt ervoor dat de Outlook-client van het slachtoffer automatisch verbinding maakt en de wachtwoordhash van de Net-NTLMv2-gebruiker daar plaatst.
Iedereen gebruikt wachtwoordhashing dagelijks; bij het aanmelden op een systeem wordt een ingegeven wachtwoord 'gehashed' en vergeleken met de opgeslagen hash. Als dit overeenkomt, krijgt de gebruiker toegang tot het systeem. De hash wordt daarna gebruikt voor autorisatie, zodat niet steeds het wachtwoord hoeft te worden opgegeven. Als iemand de hash bezit, kan deze worden gebruikt voor ongeautoriseerde toegang tot systemen.
Met wachtwoordhashing wordt een wachtwoord (of andere gegevens) omgezet in een korte reeks letters en cijfers met behulp van een versleutelingsalgoritme, zoals MD5 of SHA256. Gewoonlijk worden deze hashes opgeslagen in bestanden.
Het wachtwoord "helloworld" heeft met MD5 deze hash: fc5e038d38a57032085441e7fe7010b0 Het wachtwoord "hell0world" heeft met MD5 deze hash: 0a123b92f789055b946659e816834465
Het gevaarlijke aan dit lek is dat er geen enkele interactie van gebruikers vereist is; enkel het versturen van een e-mail is al voldoende. Het bericht hoeft niet eens in het voorbeeldvenster te worden geladen—zodra de e-mail door de Outlook-client wordt verwerkt, is diefstal van de Net-NTLMv2-hash mogelijk. De aanvaller kan vervolgens deze hash gebruiken om zich als het slachtoffer te authenticeren bij andere diensten.
Het probleem, CVE-2023-23397, treft alle ondersteunde versies van Microsoft Outlook voor Windows; andere versies zijn niet kwetsbaar. Microsoft heeft beveiligingsupdates uitgebracht en beoordeelde deze kwetsbaarheid met een 9.8 op schaal van 1 tot 10. Dit betreft een "Elevation of Privilege" kwetsbaarheid—een categorie die meestal niet als kritiek wordt beschouwd, maar in dit geval wel.
Door de schadelijke e-mail kan de aanvaller het slachtoffer laten inloggen bij diens server, waarbij de hash wordt verstuurd en onderschept. Dit proces werkt zelfs als het slachtoffer het laden van remote afbeeldingen heeft uitgeschakeld. De kwetsbaarheid werd ontdekt door het Computer Emergency Response Team van Oekraïne, Microsoft Incident Response en Microsoft Threat Intelligence. Volgens Microsoft werd deze kwetsbaarheid misbruikt door een groep die opereert vanuit Rusland.
Microsoft heeft een PowerShell-script beschikbaar gesteld waarmee beheerders kunnen controleren of hun systemen via deze kwetsbaarheid zijn aangevallen.
Te ondernemen acties:
Mailflow tijdelijk onderbreken.
Outlook sluiten en overschakelen naar webmail.
Outlook patchen via de beveiligingsupdate (Windows Update, handmatig of via een start-up script).
Firewall aanpassen om UNC-paden naar buiten en binnen tegen te gaan en het SMB-protocol naar buiten te blokkeren.
Controle uitvoeren of de patch goed is toegepast.
Mailflow herstellen.
Mailserver scannen met het door Microsoft geleverde script CVE-2023-23397.ps1.
Script vereisten:
Het script moet worden uitgevoerd op een mailserver en communiceert via Exchange Web Services (EWS) om gebruikersmailboxen te controleren op e-mails met een UNC-pad. Een UNC-pad ziet eruit als: \\hostname\sharename\filename Hoewel het niet vaak voorkomt, is een UNC-pad in een e-mail op zich niet verdacht.
Eerst moet een rolgroep worden aangemaakt met de juiste machtigingen:
New-RoleGroup -Name "CVE-2023-23397-Script" -Roles "ApplicationImpersonation" -Description "Permission to run the CVE-2023-23397 script"
Vervolgens moet het account dat het script uitvoert worden toegevoegd aan deze rolgroep. Het account moet tevens Global Admin zijn en de rol Exchange Organizational Management hebben.
Script uitvoeren: Start PowerShell als administrator en navigeer naar de map waar het script zich bevindt. Gebruik vervolgens de volgende opdracht:
Get-Mailbox -ResultSize Unlimited | .\CVE-2023-23397.ps1 -Environment Onprem -EWSServerURL https://127.0.0.1/EWS/Exchange.asmx -IgnoreCertificateMismatch
De Get-Mailbox-opdracht haalt alle gebruikersmailboxen op en geeft deze aan het script. Het script controleert stuk voor stuk alle mailboxen, wat enige tijd kan duren. De uitvoer toont de voortgang en genereert een CSV-bestand met alle e-mails die een UNC-pad bevatten. Dit betekent niet direct dat er schadelijke inhoud aanwezig is, maar nader onderzoek is noodzakelijk.
Zo. Op naar het volgende lek.
EmoticonEmoticon