Handmatige code review vindt 35 kwetsbaarheden in 8 enclave Sdk ‘ s

0
133
intel cpu sgx motherboard

Een team van Britse en België academici keek acht open-source enclave Sdk ‘ s en vond 35 kwetsbaarheden die kunnen worden benut om een kwaadaardige code uitvoeren in een computer is het meest veilige gebied.

Een trusted execution environment (t-stuk), ook wel bekend als een enclave is een veilige omgeving van een CPU die kunnen worden geïsoleerd aan de hardware of software niveau van de rest van de computer.

Moderne computersystemen, en met name cloud computing-servers, zijn vaak afhankelijk van enclaves. Laptops of desktops gebruik enclaves voor het veilig opslaan van een app wachtwoorden of encryptie sleutels, terwijl de servers gebruiken enclaves te isoleren van de gegevens van de verschillende cloud server huurders. Terwijl desktop apps niet kan gebruiken enclaves ter bescherming van hun data, de dag, de moderne cloud computing zou niet mogelijk zijn zonder hen. De CPU-enclave is in het hart van alle grote cloud hosting service, en wat maakt hypervisor technologieën mogelijk.

Momenteel enclaves worden ondersteund door verschillende onderliggende hardware-gebaseerde technologieën, zoals Intel ‘ s Software Guard Extensies (SGX), ARM TrustZone, RISC-V Keystone, Qualcomm Veilig Execution Environment (QSEE), of van de KU Leuven Sancus.

Ontwikkelaars die willen bouwen software die gebruik maakt van een enclave en het gebruik van geïsoleerde omgeving voor het opslaan van gevoelige informatie moet gebruik maken van een software development kit (SDK).

Deze Sdk ‘ s bieden een interface zo een app kan communiceren met de onderliggende enclave technologie. Maar naast interfacing, de rol van deze Sdk ‘ s is ook het beschermen van de enclave op software niveau van kwaadaardige code die kan worden uitgevoerd op het niveau van het BESTURINGSSYSTEEM. Bijvoorbeeld, een SDK wordt gehost, moet in staat zijn te detecteren kwaadaardige instructies die kunnen worden gebruikt in pogingen om exfiltrate gegevens van de enclave.

Het is deze enclave SDK afscherming functies die het onderzoeksteam keek in hun recente werk. Meer specifiek, academici keek op de acht Sdk ‘ s:

Intel SGX-SDK (op Intel SGX)Microsoft OpenEnclave (op Intel SGX)Grafeen (op Intel SGX)SGX-LKL (op Intel SGX)Roest-EDP (op Intel SGX)
Google Asylo (op Intel SGX)Keystone (op RISC-V)Sancus (op Sancus)

Een langlopend onderzoeksproject

Het onderzoeksteam van de werkzaamheden controle van alle acht projecten door het uitvoeren van handmatige code beoordelingen van mogelijk kwetsbare SDK-functies die kunnen worden misbruikt voor aanvallen.

“Dit was inderdaad nogal een lang lopend project,” Jo Van Bulck, een academicus van de KU Leuven, die betrokken zijn in het onderzoek vertelde ZDNet in een e-mail.

“Sommige van de bevindingen die zelfs teruggaat tot 2015, wanneer ik bestudeerde de veiligheid van de Sancus research platform. Na dat, ergens in 2016, vond ik een zeer vergelijkbaar probleem in Grafeen en gerapporteerd, en het werd bevestigd,” Van Bulck toegevoegd.

“We hadden een intuïtie er kan er maar hadden het te druk met andere dingen en een beetje vergat deze aanvallen. Vervolgens in 2018, ik vond CVE-2018-3626 bij het bekijken van de software van Intel voor Spectre kwetsbaarheden. Dan in November 2018, ontmoette ik David Oswald en de andere mensen van de Universiteit van Birmingham op een onderzoek conferentie in Londen, en we begonnen te praten over hoe al deze bevindingen passen in een groter geheel, en we onderzoeken deze aanvallen op een meer systematische wijze samen.

“Als onderdeel van ons onderzoek, ontwikkelden we een soort van intuïtieve werkwijze, om deze code reviews meer haalbaar. In principe richten wij ons op de volgende de code pad in en out van het slachtoffer enclave software met een ‘aanvaller hoed’ op na te denken over wat er mis kon gaan, elke stap van de weg,” Van Bulck vertelde ZDNet.

“Dat is cruciaal, omdat we alleen focussen op het entry/exit-code, de hoeveelheid regels code te verteren is meer beheersbaar dan al van de code (die helemaal niet haalbaar). Het heeft ook veel bijgedragen aan het ontwikkelen van een wetenschappelijke classificatie van de regeling voor deze vulns zodanig dat zagen we dezelfde fouten worden herhaald over onafhankelijke projecten, en we vaak een vulnerbility en vervolgens bekeken welke andere projecten en vonden dezelfde vergissingen zijn er.”

Kwetsbaarheden zijn volledig misbruikt, niet alleen theoretisch

In totaal zijn de onderzoekers zeiden dat hun handleiding code audit vond 35 kwetsbaarheden in alle acht de Sdk ‘ s, waarvan vijf ontvangen een CVE identificatie.

“We praktisch deze kwetsbaarheden alleen misbruiken in verschillende aanval scenario’ s te lekken van geheime sleutels van de enclave of het inschakelen van externe code opnieuw te gebruiken,” het onderzoeksteam zei, het beschrijven van de ernst van de kwetsbaarheden die ze hebben gevonden.

“De vijf CVEs worden toegewezen door Intel en Microsoft voor de kwetsbaarheden in hun productie-kwaliteit in de echte wereld ingezet software. En we laten ook zien hoe deze inderdaad worden misbruikt met een heel zorgelijke gevolgen (bv. leiden tot geheugen corruptie en volledige AES key recovery),” Van Bulck vertelde ZDNet.

“Voor de andere kwetsbaarheden, deze werden gevonden in een open-source projecten waar het minder duidelijk hoe ze op grote schaal ingezet worden. Voor sommigen houden van Sancus en keystonecorrectie (Keystone), het is duidelijk dat deze zijn alleen onderzoek prototypes en geen impact op de wereld. Echter, voor anderen, zoals Grafeen en LKL het is minder duidelijk,” Van Bulck vertelde ons, toen we vroegen waarom de andere kwetsbaarheden niet ontvangen een CVE.

“Er is ook een kwetsbaarheid in een SGX backend voor de officiële Roest compiler, die een meer subtiel te exploiteren, maar nog steeds als heel gevaarlijk.”

tee-sdk-attacks.png

Afbeelding: Van Bulck et al.

Alle problemen werden gemeld aan hun respectieve SDK leveranciers eerder dit jaar, en het onderzoeksteam zei ze werkten samen met de project beheerders op te lossen alle kwetsbaarheden.

“In elk geval, de problemen zijn gecontroleerd en bevestigd door de ontwikkelaars. In het geval van Intel, dit kan worden gevolgd via CVE-2018-3626 en CVE-2019-14565, en voor Microsoft via CVE-2019-0876, CVE-2019-1369, en CVE-2019-1370,” de onderzoekers gezegd.

“De zwakte gevonden in Fortanix-EDP geleid tot een security patch in de Rust compiler. Voor andere open-source projecten, onze rapporten zijn vermeld in de respectieve pleegt of problemen op GitHub,” ze zijn ook toegevoegd.

De onderzoekers presenteren hun bevindingen op donderdag, November 14, bij de ACM CCS 2019 conferentie, gehouden in Londen.

Na hun presentatie, proof-of-concept code voor het reproduceren van de kwetsbaarheden zal worden vrijgegeven op GitHub, samen met een whitepaper met de titel: “Een Verhaal van Twee Werelden: de Beoordeling van de Kwetsbaarheid van de Enclave Afscherming Runtimes.”

Academici van de Universiteit van Birmingham in het verenigd koninkrijk en de Katholieke Universiteit Leuven (KU Leuven), België, hebben bijgedragen aan dit onderzoek.

Eerder dit jaar, in augustus, een aantal van ‘ s werelds grootste tech bedrijven, zoals Alibaba, Arm, Baidu, Google Cloud, IBM, Intel, Microsoft, Red Hat, Swisscom, en Tencent, oprichter van de Vertrouwelijke Computing Consortium, een industriële groep gewijd aan het verbeteren en versnellen van de adoptie en het brede gebruik van veilige enclaves.

Veiligheid

BlueKeep benutten om een fix te krijgen voor de BSOD probleem

De grote ASP.NET hosting provider geïnfecteerd met ransomware

Apple Mail op macOS bladeren delen van versleutelde e-mails in leesbare tekst

De vaststelling van het lekken van gegevens in Jira (ZDNet YouTube)

Beste home security 2019: Professionele monitoring en DIY (CNET)

Hoe om te bepalen locatie bijhouden op je iPhone in iOS 13 (TechRepublic)

Verwante Onderwerpen:

Hardware

Beveiliging TV

Data Management

CXO

Datacenters