zondag 19 maart 2023

CVE-2023-23397 Hashes to hashes

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:

  1. Mailflow tijdelijk onderbreken.

  2. Outlook sluiten en overschakelen naar webmail.

  3. Outlook patchen via de beveiligingsupdate (Windows Update, handmatig of via een start-up script).

  4. Firewall aanpassen om UNC-paden naar buiten en binnen tegen te gaan en het SMB-protocol naar buiten te blokkeren.

  5. Controle uitvoeren of de patch goed is toegepast.

  6. Mailflow herstellen.

  7. 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.


zondag 5 maart 2023

Is my password safe

 

Een veilige wachtwoordmanager zonder dure cloudservices? Dit is mijn oplossing.

Wat ik altijd miste, was een veilige én betaalbare manier om mijn wachtwoordendatabase op meerdere apparaten te gebruiken. Overal toegang hebben tot je eigen wachtwoorden — dat is toch geweldig? Het stelt je in staat om unieke, sterke wachtwoorden te gebruiken zonder ze zelf te hoeven onthouden.

Ik heb lang naar online platforms gekeken, maar ik schrok telkens van de kosten. En eerlijk gezegd: als ál je wachtwoorden op één plek staan, dan is die plek ook meteen een gigantisch aantrekkelijk doelwit. En dat is al meerdere keren misgegaan. Grote platforms zijn gehackt, wachtwoorden zijn gelekt — verschrikkelijk.

Maar treur niet. Er is een simpele, doeltreffende oplossing die verrassend goed werkt, zonder dat je vastzit aan een abonnement of het risico van grootschalige cloudlekken.

Mijn opzet:

  • KeePass op je pc: een gratis en open source wachtwoordmanager die je volledige database versleutelt. Alleen toegankelijk met jouw hoofdwachtwoord.

  • Database in OneDrive: zo heb je je versleutelde database veilig beschikbaar in de cloud, maar wél in je eigen beheer.

  • KeepassDroid op je telefoon: hiermee open je de database ook op Android. Voor iOS zijn er alternatieven als KeePassium of Strongbox.

KeePass werkt standaard lokaal op je pc, maar in combinatie met OneDrive (of een andere syncdienst zoals Dropbox of Google Drive) kun je overal veilig bij je gegevens. Dankzij de brede platformondersteuning open je dezelfde versleutelde database op vrijwel elk apparaat — van desktop tot smartphone.

Kortom: geen maandelijkse kosten, geen afhankelijkheid van commerciële cloudaanbieders, en tóch overal veilig toegang tot je wachtwoorden.