Datalækage gennem Intel CPU-ringbus

Et team af forskere fra University of Illinois har udviklet en ny side-kanal angrebsteknik, der manipulerer informationslækage gennem Ring Interconnect af Intel-processorer. Angrebet giver dig mulighed for at fremhæve oplysninger om hukommelsesbrug i en anden applikation og spore oplysninger om tastetryk. Forskerne offentliggjorde værktøjer til at udføre relaterede målinger og adskillige prototypeudnyttelser.

Tre udnyttelser er blevet foreslået, der vil tillade:

  • Gendan individuelle bits af krypteringsnøgler, når du bruger RSA- og EdDSA-implementeringer, der er sårbare over for sidekanalangreb (hvis beregningsforsinkelser afhænger af de data, der behandles). For eksempel er lækagen af ​​individuelle bits med information om initialiseringsvektoren (nonce) af EdDSA nok til at bruge angreb til sekventielt at gendanne hele den private nøgle. Angrebet er svært at gennemføre i praksis og kan gennemføres med en lang række forbehold. For eksempel vises vellykket drift, når SMT (HyperThreading) er deaktiveret, og LLC-cachen er segmenteret mellem CPU-kerner.
  • Definer parametre om forsinkelser mellem tastetryk. Forsinkelserne afhænger af tasternes position og gør det muligt gennem statistisk analyse at genskabe de data, der indtastes fra tastaturet med en vis sandsynlighed (f.eks. skriver de fleste normalt "s" efter "a" meget hurtigere end "g" efter "s").
  • Organiser en skjult kommunikationskanal til at overføre data mellem processer med en hastighed på omkring 4 megabit pr. sekund, som ikke bruger delt hukommelse, processorcache og CPU-kernespecifikke ressourcer og processorstrukturer. Det bemærkes, at den foreslåede metode til at skabe en skjult kanal er meget vanskelig at blokere med eksisterende metoder til beskyttelse mod sidekanalangreb.

Udbytte kræver ikke forhøjede rettigheder og kan bruges af almindelige, uprivilegerede brugere. Det bemærkes, at angrebet potentielt kunne tilpasses til at organisere datalækage mellem virtuelle maskiner, men dette problem lå uden for undersøgelsens omfang, og test af virtualiseringssystemer blev ikke udført. Den foreslåede kode blev testet på en Intel i7-9700 CPU i Ubuntu 16.04. Generelt er angrebsmetoden blevet testet på desktop-processorer fra Intel Coffee Lake- og Skylake-familien og er også potentielt anvendelig til Xeon-serverprocessorer fra Broadwell-familien.

Ring Interconnect-teknologi dukkede op i processorer baseret på Sandy Bridge-mikroarkitekturen og består af flere loopede busser, der bruges til at forbinde computer- og grafikkerner, en serverbro og cache. Essensen af ​​angrebsmetoden er, at på grund af ringbusbåndbreddebegrænsningen forsinker hukommelsesoperationer i én proces adgangen til en anden process hukommelse. Ved at identificere implementeringsdetaljer gennem reverse engineering kan en angriber generere en belastning, der forårsager forsinkelser i hukommelsesadgang i en anden proces og bruge disse forsinkelser som en sidekanal til at indhente information.

Angreb på interne CPU-busser hæmmes af mangel på information om bussens arkitektur og betjeningsmetoder samt et højt støjniveau, som gør det vanskeligt at isolere nyttige data. Det var muligt at forstå bussens driftsprincipper gennem reverse engineering af de protokoller, der blev brugt ved overførsel af data gennem bussen. En dataklassificeringsmodel baseret på maskinlæringsmetoder blev brugt til at adskille nyttig information fra støj. Den foreslåede model gjorde det muligt at organisere overvågning af forsinkelser under beregninger i en specifik proces under forhold, hvor flere processer samtidig har adgang til hukommelsen, og en vis del af dataene returneres fra processorcaches.

Derudover kan vi notere identifikation af spor efter brug af en udnyttelse til den første variant af Spectre-sårbarheden (CVE-2017-5753) under angreb på Linux-systemer. Udnyttelsen bruger side-kanal informationslækage til at finde en superblok i hukommelsen, bestemme inoden af ​​/etc/shadow-filen og beregne hukommelsessideadressen for at hente filen fra diskcachen.

Kilde: opennet.ru

Tilføj en kommentar