2021 begint al goed met Zero Day in Exchange servers van Microsoft
op Donderdag 04-03-2021 kreeg ik via een artikel op Security NL het bericht dat de Microsoft exchange servers een kritiek lek te bevatten. Het lijkt erop dat er een lek in de mail server van Microsoft zit. Na het bijwerken van Windows server middels Windows update ben je nog niet klaar. Er is nog een roll up van Exchange benodigd. de zogenaamde CU19 update.
Deze update kan tot 4 uur in beslag nemen en in de tussentijd kan er geen email worden ontvangen als je maar een mail server hebt.
De getroffen versies van Exchange zijn 2013/ 2016 en 2019.
Kijk op deze link voor de jouw geschikte versie.
Microsoft url voor update
Als je deze hebt bijgewerkt moet je ook nog via Windows update de volgende update binnen halen.
KB5000871
Het lek is dicht maar hebben ze toegang tot het netwerk?
Als je op de Microsoft exchange server kijkt in de volgende map locatie:
hier kun je de volgende bestandjes vinden:
Deze bestandjes niet openen en meteen weggooien of middels antivirus de map scannen en de bestanden verwijderen. Dit zijn bestanden die zijn aangemaakt middels de lek in exchange. Deze bestanden dienen als back-up voor de hackers om op later moment terug te keren naar de machine.
De lek in Exchange server lijkt er op dit moment alleen te zijn gebruikt om bestanden aan te maken op de mail server om deze later weer aan te roepen.
Tijdens of voor het oplossen kun je SSL Poort 443 toegang dichtzetten om de aanvallen te stoppen. Hiermee zorg je er wel voor dat de outlook webapp tijdelijk niet werkt tot de poort weer wordt open gezet.
verwijder de bestandjes en kijk of het terug komt, als het goed is komen ze nu niet meer terug. Op het moment van schrijven worden de bestanden meteen door Kaspersky en Windows defender weggegooid en herkend als virus.
Voor logging Sake heb ik de files in een veilige omgeving open gemaakt en dan kun je zien wat er in de bestandjes zit:
Dit is pas het begin.
Deze scripts zijn enkel een manier om een ander script in te laden. de regel 17 is het stukje code dat een extra script inlaad. Dit script is de webshell. dit staat hackers toe om remote code uit te voeren.
Als je de base64 code ontcijfert krijg je de volgende url tevoorschijn:
http://p.estonine.com/p?e dit is een digital ocean ip reeks. Zij zijn al op de hoogte gebracht en de site is down gehaald.
Zie hier de Whois data.
Name
NAMECHEAP INC
Whois Server
whois.namecheap.com
Referral URL
http://www.namecheap.com
Status
clientHold https://icann.org/epp#clientHold
clientTransferProhibited https://icann.org/epp#clientTransferProhibited
Deze site voor hij down ging heeft nog wel enige code laten zien zodra je je voordoet als een “gehackte server”
Zodra je de code decompressed krijg je een powershell script.
in plaats van decoden kun je het ook in powershell uitvoeren met “invoke expression” parameter dit voorkomt dat het “echt” wordt uitgevoerd.
Het is ook aan te raden om deze powershell in een linux uit te voeren dan kan het minder schade doen aan je test omgeving.
hier wordt ook je mac adres opgeslagen. (in een sqllite zoals je later kan zien).
ook wordt de architecture van je computer bekeken. ben je een 64 bit systeem of een 32 bit systeem aan de hand van die parameters wordt een beslissing gemaakt welke scripts er worden geladen voor jouw server. er is ook een windows 7 en windows vista functie die ingeladen wordt.
er wordt een log bestand gemaakt met $env/temp/ccc.log
de tijd van de infectie wordt ook mee gestuurd naar de volgende url.
vervolgens wordt je doorgezet naar de volgende url
http://cdn.chatcdn.net/p?hig[Date]
hier na wordt een geplande taal met als kenmerk WINNET aangemaakt die elke 45 minuten onder gebruiker system draait die de code uitvoert die hij krijgt van de chat.cdn download
daarna slaapt het script voor een random tijd.
vervolgens nu het script blijvend op het systeem is geïnstalleerd wordt de volgende code gedownload als een png. + de unieke sleutel die hij maakt van de tijd en je Mac vanaf een direct ip adres.
Wat er wordt ingeladen via de chatcdn link is nog altijd online.
je kan 2 parameters naar de url sturen maar je krijg precies de zelfde sha256 checksum terug.
de file is wederom een powershell script maar dan is alles gespiegeld. Alle code is helemaal reversed.
als je de code recht hebt gezet en je het normaal kan lezen dan zie je precies de zelfde file als eerder maar nu word er een aantal dingen vervangen.
op het eind zie je een stukje code na een Pipe teken.
dus je ziet allemaal gekke code en als aller laatste optie zie je dit laatste stukje code. | & (psH0me[4]+$PShoMe[30]+’x’) en dat maakt met een beetje Windows powershell magie de volgende extensie: .IEX
dit gaat zo nog 3 a 4 keer door. er wordt gebruik gemaakt van powershell backtics. ” HE` LL`o ” Deze code wordt door powershell ander behandeld en wordt dus code in een leesbare regel anders dan je in een oogopslag kan zien.
er wordt {1}{2004}{2}{458}{3}{458} geschreven en dat wordt als een gigantische list item behandeld en zo wordt het script gemaakt en worden de functies die heel goed op volgorde staan vervangen met de juiste waarde waardoor de functie klopt en kan uitvoeren.
Er wordt on the fly via een comand line compiler gebruikt om inline C# programma`s te builden.
er wordt een interne verwijzing gezet in de Windows firewall tcp poort 65353 Connectport 53 en er wordt een geplande taak gemaakt met nog eens een base64 embedded code erin die elke 40 minuten draait in de achtergrond..
Vermoedelijk maken ze een interne verwijzing of port trigger om een weg naar buiten te maken over DNS. poort 53. Een poort die heel moeilijk is dicht te zetten in een bedrijf netwerk en consumenten netwerk. Deze poort zorgt ervoor dat je naar google.com kan surfen in plaats van het ip adres in te voeren.
Enkele functies die we hebben gezien in de DLL en embedded C#.
Deze code is nog niet bij iedereen geactiveerd maar als je niet patched en je achterdeur wordt gebruikt is dit het potentiële gevaar als men nog binnen kan komen over een achterdeur.
– SQL lite wordt gebruikt om gegevens bij te houden
– Mimikatz. wordt gebruikt om de Microsoft SAM database te lezen (vermoedelijk worden hier wachtwoorden mee gekraakt)
– encryptie functies. om een systeem te versleutelen of data te vernietigen / maar dit kan ook dienen om de verbindingen te beveiligen.
– SMB share functies op poort 445 (let op dit kan ook intern worden gebruikt) een firewall dichtzetten is niet altijd voldoende dit dient als een Fileshare poort en kan zo ook systemen die nog op internet zitten en een WAN adres hebben die is gelogd een pagina voor schotelen met links naar die interne SMB share om zo het netwerk mee te infecteren
– Windows firewall wordt aangepast. er worden diverse malen geprobeerd om interne poortmappings te maken.
– register wordt aangepast om op een systeem te blijven.
Scan je server:
Microsoft heeft de volgende emercency tool ter beschikking gesteld om te scannen op “restjes” en foute scripts op de mail server.
Draai een volledige scan die is binnen enkele uren klaar maar dan weet je meteen of er nog fouten zijn:
Microsoft emergency response tool