Kredit:CC0 Public Domain
Dataloger ved University of California, Riverside har for første gang afsløret, hvor let angribere kan bruge en computers grafikprocessor. eller GPU, at spionere på webaktivitet, stjæle adgangskoder, og bryde ind i cloud-baserede applikationer.
Marlan og Rosemary Bourns College of Engineering, doktorand i datalogi, Hoda Naghibijouybari og post-doc forsker Ajaya Neupane, sammen med lektor Zhiyun Qian og professor Nael Abu-Ghazaleh, reverse engineering af en Nvidia GPU til at demonstrere tre angreb på både grafik og computerstakke, såvel som på tværs af dem. Gruppen mener, at dette er de første rapporterede generelle sidekanalangreb på GPU'er.
Alle tre angreb kræver, at offeret først anskaffer sig et ondsindet program, der er indlejret i en downloadet app. Programmet er designet til at spionere på ofrets computer.
Webbrowsere bruger GPU'er til at gengive grafik på desktops, bærbare computere, og smartphones. GPU'er bruges også til at accelerere applikationer i skyen og datacentre. Webgrafik kan afsløre brugerinformation og aktivitet. Beregningsmæssige arbejdsbelastninger forbedret af GPU'en inkluderer applikationer med følsomme data eller algoritmer, der kan blive afsløret af de nye angreb.
GPU'er programmeres normalt ved hjælp af applikationsprogrammeringsgrænseflader, eller API'er, såsom OpenGL. OpenGL er tilgængelig for enhver applikation på en desktop med privilegier på brugerniveau, gør alle angreb praktiske på en desktop. Da stationære eller bærbare maskiner som standard leveres med grafikbiblioteker og drivere installeret, angrebet kan implementeres nemt ved hjælp af grafiske API'er.
Det første angreb sporer brugeraktivitet på nettet. Når offeret åbner den ondsindede app, den bruger OpenGL til at oprette en spion for at udlede browserens adfærd, når den bruger GPU'en. Hvert websted har et unikt spor med hensyn til GPU-hukommelsesudnyttelse på grund af det forskellige antal objekter og forskellige størrelser af objekter, der gengives. Dette signal er konsistent på tværs af indlæsning af det samme websted flere gange og er upåvirket af caching.
Forskerne overvågede enten GPU-hukommelsesallokeringer over tid eller GPU-ydelsestællere og tilførte disse funktioner til en maskinlæringsbaseret klassifikator, opnåelse af hjemmesidefingeraftryk med høj nøjagtighed. Spionen kan pålideligt indhente alle tildelingsbegivenheder for at se, hvad brugeren har lavet på nettet.
I det andet angreb, forfatterne udtrak brugeradgangskoder. Hver gang brugeren indtaster et tegn, hele kodeordstekstboksen uploades til GPU som en tekstur, der skal gengives. Overvågning af intervaltiden for på hinanden følgende hukommelsesallokeringshændelser lækkede antallet af kodeordstegn og timing mellem tastetryk, veletablerede teknikker til at lære adgangskoder.
Det tredje angreb retter sig mod en computerapplikation i skyen. Angriberen starter en ondsindet beregningsmæssig arbejdsbelastning på GPU'en, som fungerer sammen med ofrets applikation. Afhængigt af neurale netværksparametre, intensiteten og stridsmønsteret på cachen, hukommelse og funktionelle enheder er forskellige over tid, skabe målbar lækage. Angriberen bruger maskinlæringsbaseret klassificering på præstationsmodspor til at udtrække ofrets hemmelige neurale netværksstruktur, såsom antallet af neuroner i et specifikt lag af et dybt neuralt netværk.
Forskerne rapporterede deres resultater til Nvidia, som svarede, at de har til hensigt at udgive en patch, der giver systemadministratorer mulighed for at deaktivere adgang til ydeevnetællere fra processer på brugerniveau. De delte også et udkast til papiret med AMD- og Intel-sikkerhedsteamene for at sætte dem i stand til at evaluere deres GPU'er med hensyn til sådanne sårbarheder.
I fremtiden planlægger gruppen at teste gennemførligheden af GPU-sidekanalangreb på Android-telefoner.
Papiret, "Gørt usikker:GPU-sidekanalangreb er praktiske, " blev præsenteret på ACM SIGSAC-konferencen om computer- og kommunikationssikkerhed den 15.-19. oktober, 2018, i Toronto, Canada.