'MagicDot' Windows-zwakte maakt onbevoegde rootkit-activiteit mogelijk

'MagicDot' Windows-zwakte maakt onbevoegde rootkit-activiteit mogelijk

'MagicDot' Windows-zwakte maakt onbevoegde rootkit-activiteit mogelijk PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.

ZWARTE HOED AZIË – Singapore – Een bekend probleem dat verband houdt met het DOS-naar-NT-padconversieproces in Windows brengt aanzienlijke risico's met zich mee voor bedrijven, omdat aanvallers rootkit-achtige post-exploitatiemogelijkheden krijgen om bestanden, mappen en processen te verbergen en na te bootsen.

Dat zegt Or Yair, beveiligingsonderzoeker bij SafeBreach, die het probleem deze week tijdens een sessie hier schetste. Hij heeft ook vier verschillende kwetsbaarheden beschreven die verband houden met het probleem genaamd “MagicDot” – inclusief een gevaarlijke bug bij het uitvoeren van externe code die kan worden geactiveerd door simpelweg een archief uit te pakken.

Punten en spaties bij conversie van DOS-naar-NT-paden

De MagicDot-groep van problemen bestaat dankzij de manier waarop Windows DOS-paden verandert in NT-paden.

Wanneer gebruikers bestanden of mappen op hun pc openen, doet Windows dit door te verwijzen naar het pad waar het bestand zich bevindt; Normaal gesproken is dat een DOS-pad dat de indeling “C:UsersUserDocumentsexample.txt” volgt. Er wordt echter een andere onderliggende functie genaamd NtCreateFile gebruikt om de bewerking van het openen van het bestand daadwerkelijk uit te voeren, en NtCreateFile vraagt ​​om een ​​NT-pad en niet om een ​​DOS-pad. Windows converteert dus het vertrouwde DOS-pad dat zichtbaar is voor gebruikers naar een NT-pad, voordat NtCreateFile wordt aangeroepen om de bewerking in te schakelen.

Het exploiteerbare probleem bestaat omdat Windows tijdens het conversieproces automatisch alle punten uit het DOS-pad verwijdert, samen met eventuele extra spaties aan het einde. Dus DOS-paden zoals deze:

  • C:voorbeeldvoorbeeld.   

  • C:voorbeeldvoorbeeld… 

  • C:voorbeeldvoorbeeld    

worden allemaal geconverteerd naar “??C:exampleexample” als een NT-pad.

Yair ontdekte dat door het automatisch verwijderen van foutieve tekens aanvallers speciaal vervaardigde DOS-paden konden maken die konden worden geconverteerd naar NT-paden van hun keuze, die vervolgens konden worden gebruikt om bestanden onbruikbaar te maken of om kwaadaardige inhoud en activiteiten te verbergen.

Een rootkit zonder privileges simuleren

De MagicDot-problemen creëren in de eerste plaats de mogelijkheid voor een aantal post-exploitatietechnieken die aanvallers op een machine helpen stealth te behouden.

Het is bijvoorbeeld mogelijk om schadelijke inhoud te vergrendelen en te voorkomen dat gebruikers, zelfs beheerders, deze onderzoeken. “Door een eenvoudige punt aan het einde van een kwaadaardige bestandsnaam te plaatsen of door een bestand of map een naam te geven met alleen punten en/of spaties, zou ik alle gebruikersruimteprogramma’s die de normale API gebruiken, voor hen ontoegankelijk kunnen maken... Ik kan ze niet lezen, schrijven, verwijderen of er iets anders mee doen”, legde Yair uit tijdens de sessie.

Vervolgens ontdekte Yair bij een gerelateerde aanval dat de techniek kon worden gebruikt om bestanden of mappen in archiefbestanden te verbergen.

"Ik beëindigde eenvoudigweg een bestandsnaam in een archief met een punt om te voorkomen dat Explorer deze zou weergeven of uitpakken", zei Yair. “Het resultaat was dat ik een kwaadaardig bestand in een onschuldige zip kon plaatsen. Iedereen die Explorer gebruikte om de archiefinhoud te bekijken en uit te pakken, kon niet zien dat dat bestand erin bestond.”

Een derde aanvalsmethode omvat het maskeren van kwaadaardige inhoud door legitieme bestandspaden na te bootsen.

"Als er een onschadelijk bestand was met de naam 'goedaardig', kon ik [DOS-naar-NT-padconversie gebruiken] om een ​​kwaadaardig bestand te maken in dezelfde map [ook wel goedaardig genoemd", legde hij uit, eraan toevoegend dat dezelfde aanpak kan worden gebruikt om mappen en zelfs bredere Windows-processen na te bootsen. “Als gevolg hiervan zou, wanneer een gebruiker het kwaadaardige bestand leest, in plaats daarvan de inhoud van het oorspronkelijke onschadelijke bestand worden geretourneerd”, waardoor het slachtoffer er niet van op de hoogte was dat ze daadwerkelijk kwaadaardige inhoud openden.

Alles bij elkaar genomen kan het manipuleren van MagicDot-paden tegenstanders rootkit-achtige mogelijkheden geven zonder beheerdersrechten, legt Yair uit, die publiceerde gedetailleerde technische opmerkingen over de aanvalsmethoden in combinatie met de sessie.

“Ik ontdekte dat ik bestanden en processen kon verbergen, bestanden in archieven kon verbergen, de prefetch-bestandsanalyse kon beïnvloeden, gebruikers van Taakbeheer en Process Explorer kon laten denken dat een malwarebestand een geverifieerd uitvoerbaar bestand was, gepubliceerd door Microsoft, Process Explorer kon uitschakelen met een denial of service (DoS) kwetsbaarheid en meer”, zei hij – allemaal zonder beheerdersrechten of de mogelijkheid om code in de kernel uit te voeren, en zonder tussenkomst in de keten van API-aanroepen die informatie ophalen.

“Het is belangrijk dat de cyberbeveiligingsgemeenschap dit risico onderkent en overweegt om onbevoorrechte rootkit-detectietechnieken en -regels te ontwikkelen”, waarschuwde hij.

Een reeks “MagicDot”-kwetsbaarheden

Tijdens zijn onderzoek naar de MagicDot-paden slaagde Yair er ook in om vier verschillende kwetsbaarheden te ontdekken die verband hielden met het onderliggende probleem, waarvan er drie inmiddels door Microsoft zijn gepatcht.

Eén kwetsbaarheid voor het uitvoeren van externe code (RCE) (CVE-2023-36396, CVSS 7.8) in de nieuwe extractielogica van Windows voor alle nieuw ondersteunde archieftypen stelt aanvallers in staat een kwaadaardig archief te maken dat, zodra het is uitgepakt, waar ze maar willen op een externe computer schrijft, wat leidt tot het uitvoeren van code.

“Stel dat je een archief uploadt naar je GitHub-repository adverteer het als een coole tool die je kunt downloaden”, vertelt Yair aan Dark Reading. “En wanneer de gebruiker het downloadt, is het geen uitvoerbaar bestand, je pakt gewoon het archief uit, wat als een volkomen veilige actie zonder veiligheidsrisico's wordt beschouwd. Maar nu kan de extractie zelf code op je computer uitvoeren, en dat is ernstig verkeerd en zeer gevaarlijk.”

Een tweede bug is een kwetsbaarheid voor misbruik van bevoegdheden (EoP) (CVE-2023-32054, CVSS 7.3) waarmee aanvallers zonder rechten in bestanden kunnen schrijven door het herstelproces van een eerdere versie vanuit een schaduwkopie te manipuleren.

De derde bug is de niet-bevoorrechte DOS-fout voor anti-analyse van Process Explorer, waarvoor CVE-2023-42757 is gereserveerd, waarvan de details volgen. En de vierde bug, ook een EoP-probleem, stelt onbevoegde aanvallers in staat bestanden te verwijderen. Microsoft bevestigde dat de fout tot “onverwacht gedrag” leidde, maar heeft er nog geen CVE of oplossing voor uitgebracht.

“Ik maak een map in de demomap met de naam … en daarbinnen schrijf ik een bestand met de naam c.txt,' legde Yair uit. “Wanneer een beheerder vervolgens probeert de … map, wordt in plaats daarvan de hele demomap verwijderd.”

Potentieel bredere “MagicDot”-vertakkingen

Hoewel Microsoft de specifieke kwetsbaarheden van Yair heeft aangepakt, blijft de automatische verwijdering van punten en spaties van DOS-naar-NT-padconversie bestaan, ook al is dat de hoofdoorzaak van de kwetsbaarheden.

“Dat betekent dat er mogelijk nog veel meer potentiële kwetsbaarheden en post-exploitatietechnieken kunnen worden gevonden met behulp van dit probleem”, vertelt de onderzoeker aan Dark Reading. “Dit probleem bestaat nog steeds en kan tot veel meer problemen en kwetsbaarheden leiden, die veel gevaarlijker kunnen zijn dan de problemen en kwetsbaarheden die we kennen.”

Hij voegt eraan toe dat het probleem gevolgen heeft die verder gaan dan Microsoft.

“Wij geloven dat de implicaties niet alleen relevant zijn voor Microsoft Windows, het meest gebruikte desktop-besturingssysteem ter wereld, maar ook voor alle softwareleveranciers, van wie de meesten ook toestaan ​​dat bekende problemen van versie tot versie van hun software blijven bestaan”, waarschuwde hij. in zijn presentatie.

Ondertussen kunnen softwareontwikkelaars hun code veiliger maken tegen dit soort kwetsbaarheden door NT-paden te gebruiken in plaats van DOS-paden, merkte hij op.

“De meeste API-aanroepen op hoog niveau in Windows ondersteunen NT-paden”, zei Yair in zijn presentatie. “Het gebruik van NT-paden vermijdt het conversieproces en zorgt ervoor dat het opgegeven pad hetzelfde pad is waarop daadwerkelijk wordt gewerkt.”

Voor bedrijven moeten beveiligingsteams detecties creëren die zoeken naar frauduleuze punten en spaties binnen bestandspaden.

“Er zijn vrij eenvoudige detecties die je hiervoor kunt ontwikkelen, om te zoeken naar bestanden of mappen met achterliggende punten of spaties, want als je die op je computer aantreft, betekent dit dat iemand het met opzet heeft gedaan, omdat het niet zo is. dat is gemakkelijk te doen”, vertelt Yair aan Dark Reading. “Normale gebruikers kunnen niet zomaar een bestand maken dat eindigt met een punt of spatie, Microsoft gaat dat voorkomen. Aanvallers zullen een lagere API dat ligt dichter bij de kern, en zal enige expertise nodig hebben om dit te bereiken.”

Tijdstempel:

Meer van Donkere lezing