Zephyrnet-logo

'GhostRace' speculatieve uitvoeringsaanval heeft gevolgen voor alle CPU- en OS-leveranciers

Datum:

Onderzoekers van IBM en de VU Amsterdam hebben een nieuwe aanval ontwikkeld die gebruik maakt van speculatieve uitvoeringsmechanismen in moderne computerprocessors om controles in besturingssystemen op zogenaamde racecondities te omzeilen.

De aanval maakt gebruik van een kwetsbaarheid (CVE-2024-2193) die volgens de onderzoekers gevolgen heeft voor Intel-, AMD-, ARM- en IBM-processors. Het werkt tegen elk besturingssysteem, elke hypervisor en software die synchronisatieprimitieven implementeert – of geïntegreerde controles tegen raceomstandigheden. De onderzoekers hebben hun aanval ‘GhostRace’ genoemd en beschreven in een technisch artikel dat deze week is uitgebracht.

“Onze belangrijkste bevinding is dat alle gangbare synchronisatieprimitieven microarchitectonisch kunnen worden omzeild op speculatieve paden, waardoor alle architectonisch rasvrije kritieke regio’s in speculatieve racecondities (SRC’s) worden veranderd”, aldus de onderzoeker. onderzoekers gezegd.

Bugs bij speculatieve executies blijven ondanks onderzoek bestaan

Een race condition, zoals de onderzoekers in hun artikel uitleggen, kan ontstaan ​​wanneer twee of meer processen, of threads, tegelijkertijd toegang proberen te krijgen tot een gedeelde computerbron, zoals geheugenlocaties of bestanden. Het is een relatief veel voorkomende oorzaak van datacorruptie en kwetsbaarheden die leiden tot lekken van geheugeninformatie, ongeautoriseerde toegang, denial of service en het omzeilen van de beveiliging.

Om dit probleem te verhelpen, hebben leveranciers van besturingssystemen een zogenaamde speculatieve primitieven in hun software die de toegang tot gedeelde bronnen controleert en synchroniseert. De primitieven, die namen dragen als ‘mutex’ en ‘spinlock’, zorgen ervoor dat slechts één thread tegelijk toegang kan krijgen tot een gedeelde bron of deze kan wijzigen.

Wat de onderzoekers van IBM en de VU Amsterdam ontdekten was een manier om deze mechanismen te omzeilen door zich te richten op de speculatieve uitvoering of out-of-order verwerkingsfunctie in moderne processors. Speculatieve uitvoering houdt in feite in dat een processor de uitkomst van bepaalde instructies voorspelt en deze van tevoren uitvoert in plaats van ze in de ontvangen volgorde uit te voeren. Het doel is om de verwerkingstijd te versnellen door de processor aan volgende instructies te laten werken, zelfs terwijl hij wacht op het resultaat van eerdere instructies.

Speculatieve executie kwam in 2017 in de schijnwerpers toen onderzoekers een manier ontdekten om de techniek te exploiteren toegang krijgen tot gevoelige informatie in het systeemgeheugen – zoals wachtwoorden, encryptiesleutels en e-mails – en gebruik die gegevens voor verdere aanvallen. De zogenaamde Spectre- en Meltdown-kwetsbaarheden troffen vrijwel elke moderne microprocessor aan en veroorzaakten een herziening van de microprocessorarchitectuur dat is in veel opzichten nog steeds aan de gang.

Als onderdeel van een poging om microprocessorontwerpers en andere belanghebbenden te helpen processors beter te beveiligen tegen kwetsbaarheden zoals Spectre en Meltdown, heeft MITRE in februari 2024 vier nieuwe Common Zwakte Enumerators (CWE) uitgerold die beschrijven en documenteren van verschillende microprocessorzwakheden.

Een nieuwe draai aan een bekende exploit

De aanval die de IBM- en VU-onderzoekers ontwikkelden, is gebaseerd op voorwaardelijke branch-speculatie, vergelijkbaar met een soort Spectre-aanval. "Onze belangrijkste bevinding is dat alle gangbare (schrijfzijde) primitieven (i) geen expliciete serialisatie hebben en (ii) de kritieke regio bewaken met een voorwaardelijke vertakking", aldus de onderzoekers. Met andere woorden, ze ontdekten dat wanneer de synchronisatieprimitieven een voorwaardelijke “if”-instructie gebruiken om de toegang tot gedeelde bronnen te controleren, ze kwetsbaar zijn voor een speculatieve uitvoeringsaanval.

“In een vijandige speculatieve uitvoeringsomgeving, dwz waarin een Spectre-aanvaller de voorwaardelijke branch verkeerd traint, gedragen deze primitieven zich in wezen als een no-op”, merkten ze op. “De gevolgen voor de veiligheid zijn aanzienlijk, omdat een aanvaller speculatief alle kritieke regio’s in de slachtoffersoftware kan uitvoeren zonder synchronisatie.”

In een blog post, merkten de onderzoekers op dat ze alle grote hardwareleveranciers op de hoogte hebben gesteld van hun ontdekking, en dat de leveranciers op hun beurt alle getroffen besturingssystemen en hypervisorleveranciers op de hoogte hebben gesteld. Alle leveranciers erkenden het probleem, aldus de onderzoekers.

In een advies, AMD aanbevolen dat softwareontwikkelaars het volgen eerder gepubliceerde richtlijnen over hoe u zich kunt beschermen tegen aanvallen van het Spectre-type.

spot_img

Laatste intelligentie

spot_img