Delen via


AI-/ML-beweging naar de Security Development Lifecycle-bugbar

Door Andrew Marshall, Jugal Parikh, Emre Kiciman en Ram Shankar Siva Kumar

November 2019

Dit artikel is een product van de Microsoft AETHER Engineering Practices for AI Working Group. Dit artikel fungeert als aanvulling op de bestaande SDL-bugbalk die wordt gebruikt voor het opsporen van traditionele beveiligingsproblemen. Het is bedoeld om te worden gebruikt als referentie voor het triage van beveiligingsproblemen met betrekking tot AI/ML. De classificatie ernst van beveiligingsproblemen voor AI-systemen (gepubliceerd door Microsoft Security Response Center), definieert algemene typen beveiligingsproblemen en ernstniveaus voor systemen met AI.

Deze richtlijnen zijn georganiseerd rond de adversarial Machine Learning Threat Taxonomy, gemaakt door Ram Shankar Siva Kumar, David O'Brien, Kendra Albert, Salome Viljoen en Jeffrey Snover, en getiteld Failure Modes in Machine Learning. Hoewel het onderzoek naar deze inhoud is gebaseerd op zowel opzettelijk/schadelijk als onopzettelijk gedrag in ML-foutmodi, richt deze foutbalk zich volledig op opzettelijk/schadelijk gedrag dat zou leiden tot een beveiligingsincident en/of implementatie van een oplossing.

Bedreiging Beschrijving/bedrijfsrisico's/voorbeelden
Datacorruptie

Beschadigde trainingsgegevens: het einddoel van de aanvaller is om het machinemodel dat is gegenereerd in de trainingsfase te besmetten, zodat voorspellingen over nieuwe gegevens in de testfase worden gewijzigd.

Bij gerichte verontreinigingsaanvallen wil de aanvaller specifieke voorbeelden verkeerd classificeren om ervoor te zorgen dat specifieke acties worden uitgevoerd of nagelaten.

AV-software als malware indienen om de software onjuist te laten classificeren als schadelijke software om zo het gebruik van gerichte AV-software op clientsystemen te elimineren.

Een bedrijf scrapet een bekende en vertrouwde website op toekomstige gegevens om zijn modellen te trainen. De website van de gegevensprovider wordt vervolgens gecompromitteerd via EEN SQL-injectieaanval. De aanvaller kan de gegevensset at-will vergiftigen en het model dat wordt getraind, heeft geen idee dat de gegevens zijn besmet.

Stelen van model

Recreatie van het onderliggende model door legitiem query's erop uit te voeren. De functionaliteit van het nieuwe model is hetzelfde als die van het onderliggende model. Zodra het model opnieuw is gemaakt, kan het worden omgekeerd om informatie over het kenmerk te herstellen of om trainingsgegevens te deduceren.

Vergelijkingen oplossen – Voor een model dat klassewaarschijnlijkheden retourneert via API-uitvoer, kan een aanvaller query's maken om onbekende variabelen in een model te bepalen.

Path Finding: een aanval die gebruikmaakt van API-bijzonderheden om de 'beslissingen' te extraheren die door een boomstructuur worden genomen bij het classificeren van een invoer.

Overdrachtsaanval – Een kwaadwillend iemand kan een lokaal model trainen, mogelijk door voorspellingsquery's naar het doelmodel te verzenden en dit te gebruiken om schadelijke voorbeelden te maken die worden overgedragen op het doelmodel. Als uw model geëxtraheerd is en kwetsbaar blijkt te zijn voor een bepaald type schadelijke invoer, kunnen nieuwe aanvallen tegen uw productie-implementatiemodel volledig offline worden ontwikkeld door de aanvaller die een kopie van uw model heeft geëxtraheerd.

In instellingen waarbij een ML-model wordt gebruikt om schadelijk gedrag te detecteren, zoals het identificeren van spam, het classificeren van malware en het detecteren van netwerkafwijkingen, kan modelextractie leiden tot fraudeaanvallen

Modelinversie

De privéfuncties die in machine learning-modellen worden gebruikt, kunnen worden hersteld. Dit omvat het reconstrueren van persoonlijke trainingsgegevens waartoe de aanvaller geen toegang heeft. Dit wordt bereikt door de invoer te vinden die het geretourneerde betrouwbaarheidsniveau maximaliseert, afhankelijk van de classificatie die met het doel overeenkomt.

Voorbeeld: Reconstructie van gezichtsherkenningsgegevens van geraden of bekende namen en API-toegang om een query uit te voeren op het model.

Schadelijk voorbeeld in fysiek domein Deze voorbeelden kunnen zich in het fysieke domein bevinden, zoals een zelfrijdende auto die wordt misleid om een stopteken uit te voeren vanwege een bepaalde kleur van licht (de indringerinvoer) die op het stopteken wordt weergegeven, waardoor het systeem voor afbeeldingsherkenning het stopteken niet meer als stopteken kan zien.
ML-toeleveringsketen aanvallen

Vanwege grote resources (gegevens en berekeningen) die nodig zijn voor het trainen van algoritmen, is de huidige praktijk het hergebruiken van modellen die zijn getraind door grote bedrijven en deze enigszins wijzigen voor taken (bijvoorbeeld: ResNet is een populair model voor afbeeldingsherkenning van Microsoft).

Deze modellen worden gecureerd in een Model Zoo (Caffe host populaire modellen voor afbeeldingsherkenning).

Bij deze aanval valt de kwaadwillende persoon de in Caffe gehoste modellen aan, waardoor de bron voor anderen wordt verontreinigd.

Gemanipuleerd algoritme van schadelijke ML-provider

Het onderliggende algoritme in gevaar brengen

Een schadelijke ML-as-a-service-provider stelt een gemanipuleerd algoritme voor waarin de privé-trainingsgegevens worden hersteld. Dit biedt de aanvaller de mogelijkheid om slechts op basis van het model gevoelige gegevens, zoals gezichten en teksten, te reconstrueren.

Neural Net herprogrammeren

Met een speciaal gemaakte query van een aanvaller kunnen ML-systemen opnieuw worden geprogrammeerd naar een taak die afwijkt van de oorspronkelijke intentie van de maker

Zwakke toegangscontroles voor een gezichtsherkennings-API waarmee 3e partijen kunnen worden opgenomen in apps die zijn ontworpen om gebruikers te beschadigen, zoals een deepfakegenerator.

Dit is een scenario voor misbruik/accountverwijdering

Adversarial verstoring

Bij verstorende aanvallen wijzigt de aanvaller heimelijk de query om een gewenste reactie te krijgen van een productie-implementatiemodel. Dit is een schending van modelinvoerintegriteit die leidt tot fuzzing-style aanvallen waarbij het eindresultaat niet noodzakelijkerwijs een toegangsschending of EOP is. In plaats daarvan worden de classificatieprestaties van het model aangetast.

Dit kan worden gemanifesteerd door trollen die bepaalde doelwoorden gebruiken op een manier die de AI hen verbiedt, waardoor de service effectief wordt geweigerd aan legitieme gebruikers met een naam die overeenkomt met een 'verboden' woord.

Afdwingen dat goedaardige e-mails worden geclassificeerd als spam of ervoor zorgen dat een schadelijk voorbeeld onopgemerkt blijft. Deze aanvallen worden ook wel modelontwijkings- of imitatieaanvallen genoemd.

De aanvaller kan invoeren maken om het betrouwbaarheidsniveau van de juiste classificatie te verminderen, met name in cruciale scenario's. Dit kan ook de vorm aannemen van een groot aantal fout-positieven dat is bedoeld om beheerders of bewakingssystemen te overbelasten met frauduleuze waarschuwingen die niet te onderscheiden zijn van legitieme waarschuwingen.

Afleiden van lidmaatschap

Afzonderlijk lidmaatschap deduceren uit een groep die wordt gebruikt om een model te trainen

Bijvoorbeeld: voorspelling van chirurgische ingrepen op basis van leeftijd/geslacht/ziekenhuis