Dela via


AI/ML-relaterade justeringar av SDL-indelningen av buggar

Av Andrew Marshall, Jugal Parikh, Emre Kiciman och Ram Shankar Siva Kumar

November 2019

Den här artikeln är en slutprodukt från Microsoft AETHER Engineering Practices for AI Working Group. Den här artikeln fungerar som ett komplement till det befintliga SDL-felfältet som används för att sortera traditionella säkerhetsproblem. Den är avsedd att användas som referens för prioritering av AI/ML-relaterade säkerhetsproblem. Klassificering av sårbarhetsgrader för AI-system (publicerad av Microsoft Security Response Center) definierar vanliga sårbarhetstyper och allvarlighetsnivåer för system som involverar AI.

Den här vägledningen är organiserad kring Adversarial Machine Learning Threat Taxonomy, skapad av Ram Shankar Siva Kumar, David O'Brien, Kendra Albert, Salome Viljoen och Jeffrey Snover, och med titeln Failure Modes in Machine Learning. Även om forskningen om det här innehållet baseras på adresser både avsiktliga/skadliga och oavsiktliga beteenden i ML-fellägen, fokuserar det här tillägget på avsiktliga/skadliga beteenden som skulle resultera i en säkerhetsincident och/eller distribution av en korrigering.

Hot Beskrivning/affärsrisker/exempel
Kontaminerade data

Skadade träningsdata – Slutmålet för angriparen är att förorena datormodellen som genererades i träningsfasen, så att förutsägelser om nya data ändras i testfasen.

I riktade kontamineringsangrepp vill angriparen felklassificera specifika indata så att specifika åtgärder antingen utförs eller ignoreras.

Att skicka AV-programvara som skadlig kod för att framtvinga en felklassificering som skadlig kod och stoppa användningen av riktad AV-programvara i klientsystem.

Ett företag hämtar data om optionsmarknaden från en välkänd och betrodd webbplats för att träna sina modeller. Dataleverantörens webbplats komprometteras sedan via SQL-inmatningsattack. Angriparen kan förgifta datamängden efter betrott och modellen som tränas har ingen uppfattning om att data är befläckade.

Modellstöld

Återskapande av den underliggande modellen med hjälp av legitima frågor. Den nya modellen har samma funktioner som den underliggande modellen. När modellen återskapas kan den inverteras för att återskapa funktionsinformation eller dra slutsatser om träningsdata.

Ekvationslösning – för en modell som returnerar klassannolikheter via API-utdata kan en angripare konstruera frågor för att få fram de okända variablerna i en modell.

Sökvägssökning – en attack som utnyttjar API-särdrag för att extrahera de "beslut" som fattas av ett träd när du klassificerar indata.

Överföringsangrepp – en angripare kan träna en lokal modell, till exempel genom att skicka förutsägelsefrågor till målmodellen, och använda den till att konstruera manipulerade indata som sedan överförs till målmodellen. Om din modell extraheras och visar sig vara sårbar för en viss typ av indatamanipulering så kan nya angrepp mot modellen i produktion utvecklas offline av angriparen som extraherade kopian av modellen.

I scenarier där en maskininlärningsmodell används till att identifiera skadligt beteende, som att identifiera skräppost, klassificera skadlig kod och identifiera avvikelser i nätverket så kan modellextrahering göra det lättare att komma runt skyddsmekanismer

Modellinversion

De privata funktionerna som används i maskininlärningsmodeller kan återskapas. Detta omfattar rekonstruera privata träningsdata som angriparen inte har åtkomst till. Det görs genom att angriparen hittar indata som maximerar den returnerade konfidensnivån givet klassificeringen som matchar målet.

Exempel: Rekonstruktion av ansiktsigenkänningsdata från gissade eller kända namn och API-åtkomst för att fråga modellen.

Skadliga exempel i den fysiska domänen Dessa exempel kan manifesteras i den fysiska domänen, som en självkörande bil som luras att köra en stoppskylt på grund av en viss färg av ljus (de kontradiktoriska indata) som lyser på stopptecknet, vilket tvingar bildigenkänningssystemet att inte längre se stopptecknet som ett stopptecken.
Angrepp mot ML-leveranskedjan

På grund av stora resurser (data + beräkning) som krävs för att träna algoritmer är den nuvarande metoden att återanvända modeller som tränats av stora företag och ändra dem något för aktuella uppgifter (t.ex. ResNet är en populär bildigenkänningsmodell från Microsoft).

De här modellerna väljs ut till ett Model Zoo (Caffe är värd för populära bildigenkänningsmodeller).

Vid den här typen av angrepp attackeras modellerna i Caffe, vilket innebär att de även blir skadliga för andra.

Algoritm med bakdörr från illvillig ML-leverantör

Manipulering av den underliggande algoritmen

En illvillig leverantör presenterar en algoritm med en bakdörr som gör att privata träningsdata kan återskapas. Det här gör att angriparen kan rekonstruera känsliga data som ansikten och texter endast med hjälp av modellen.

Omprogrammering av neurala nätverk

Med en särskilt utformad fråga från en angripare kan ML-system omprogrammeras till en uppgift som avviker från skaparens ursprungliga avsikt

Svaga åtkomstkontroller i ett API för ansiktsigenkänning som gör att tredje part kan använda det i appar som är utformade för att skada användarna, till exempel en ”deep fakes”-generator.

Det här är ett scenario för missbruk/nedtagning av konto

Avsiktliga störningar

Vid störningsattacker modifierar angriparen obemärkt frågan för att få önskat svar från en modell i produktionsmiljö. Detta är ett brott mot modellens indataintegritet som leder till fuzzing-liknande attacker där slutresultatet inte nödvändigtvis är en åtkomstöverträdelse eller EOP. I stället komprometteras modellens klassificeringsprestanda.

Detta kan manifesteras av troll som använder vissa målord på ett sätt som AI:n förbjuder dem på, vilket i praktiken nekar tjänsten till legitima användare med ett namn som matchar ett "förbjudet" ord.

Att få legitima e-postmeddelanden klassificerade som skräppost eller att få skadliga meddelanden att inte klassificeras. Den här typen av angrepp involverar manipulerade indata eller imitation.

Angriparen kan skapa indata som minskar förtroendenivån för en korrekt klassificering, särskilt i scenarier som kan få betydande konsekvenser. Det här kan också ske i form av ett stort antal falska positiva identifieringar som är avsedda att överbelasta administratörer eller övervakningssystem med bedrägliga aviseringar som är svåra att skilja från legitima aviseringar.

Medlemskapsinferens

Inferens av enskilt medlemskap i en grupp som används till att träna en modell

Exempel: förutsägelse av kirurgiska procedurer baserat på ålder/kön/sjukhus