In dit artikel leggen we uit hoe je je data science modellen op Azure goed kunt beveiligen. Daarbij richten we ons op de volgende onderwerpen:
- Wat zijn machine learning model aanvallen?
- Waarom bestaan machine learning model aanvallen?
- Wat is de impact van een hack?
- Hoe voorkom en beperk je data science model aanvallen?
Ben je benieuwd naar de mogelijkheden van data science, maar weet je niet waar je moet beginnen? Wij raden je aan te beginnen met ons inleidende artikel zodat je vertrouwd kan raken met data science. Of leer eerst hoe je je huidige data science-omgeving op Azure kan beveiligen.
Wat zijn machine learning model aanvallen?
Zoals je misschien al geraden hebt, is een machine learning model attack een aanval op je machine learning model. Laten we eens in de huid kruipen van een hacker om te begrijpen wat zo'n aanval is en waarom dit soort aanvallen überhaupt bestaan.
Een hacker kan jouw data science modellen aanvallen om verschillende redenen, tijdens verschillende fasen. We kunnen machine learning model aanvallen in drie pijlers verdelen, (1) Confidentiality Attacks, (2) Integrity Attacks, en (3) Availability Attacks.
1. Confidentiality Attacks - Vertrouwelijkheidsaanvallen
Bij deze aanval gaat het erom gevoelige informatie uit je data science systeem te halen op basis van je model.
Een voorbeeld van een vertrouwelijkheidsaanval is een Model Stealing-aanval. Deze aanval vindt plaats in de productiefase van jouw machine-learning model. Wanneer je een model van een concurrent hebt gevonden dat je wilt hebben of gebruiken, kan je dit doelmodel aanvallen door het te bevragen met 'monsters' en kijken hoe het reageert. Je kunt het doelmodel reverse engineeren als de reacties zijn wat je verwacht.
2. Integrity Attacks - Integriteitsaanvallen
Deze aanval wil dat het model een fout maakt door het model stilletjes voor de gek te houden. Je zult merken dat jouw model een rood verkeerslicht plotseling als groen classificeert, wat verkeersproblemen kan veroorzaken.
Een voorbeeld van een integriteitsaanval is een Evasion Attack. Deze aanval vindt plaats tijdens de inferencingfase van jouw data science model. De aanval richt zich op het creëren van valse input voor je model. Voor het model 'lijkt' het op standaard input. Maar in werkelijkheid is de gegeven informatie menselijkerwijs onmogelijk. Deze aanval is gebruikelijk in computer vision api, waar afbeeldingen worden gebruikt. Wat er gebeurt, is dat de pixels van een afbeelding worden veranderd vlak voordat deze wordt geüpload in de computer vision API. Dit zorgt ervoor dat de computer vision API het resultaat niet classificeert zodra je de 'veranderde pixel'-afbeelding hebt geüpload. Neem bijvoorbeeld een kat, deze wordt door jouw model niet langer als kat geclassificeerd, wat enorme problemen kan veroorzaken.
3. Availability Attacks - Beschikbaarheidsaanvallen
Deze aanval is erop gericht je hele systeem plat te leggen. Je zou gegevens kunnen vergiftigen tot het punt dat de manier waarop je machine learning model leert zo verkeerd is dat het model zelf rotzooi is. Er zit dus niets anders op dan het uit te schakelen.
Een voorbeeld van een beschikbaarheidsaanval is een Data Poisoning aanval. Deze aanvallen vallen de integriteit van jouw modellen aan door de impact te wijzigen. Deze aanval is gericht op het creëren van input die worden geaccepteerd als trainingsgegevens voor jouw model, maar die niet als trainingsgegevens zouden moeten worden genomen. Je kunt je vast voorstellen dat wanneer jouw terabytes aan beeldgegevens in jouw opslag of database zitten, wanneer iemand 'verkeerde' of vergiftigde beelden toevoegt die jouw model zal gebruiken voor training, dit waarschijnlijk niet zal opvallen. Je model wordt nu dus getraind met vergiftigde gegevens, wat gevolgen heeft voor de juistheid van je voorspellingsresultaten.
Lees hier de meer over de bedreigingsmodellen in AI-/ML-systemen
Waarom modelaanvallen voor machine learning bestaan
Hoewel al deze soorten aanvallen eng lijken, kunnen we ons afvragen: waarom zouden we data science modellen überhaupt aanvallen? De reden waarom iemand jouw data science model zou aanvallen, hangt grotendeels af van het type aanval. Laten we, om dit te begrijpen, een paar voorbeelden bekijken:
- Een aanvaller zou zijn tijd om zijn eigen modellen te ontwikkelen willen verkorten. In dat geval zouden ze een Model Stealing aanval gebruiken en proberen jouw model te dupliceren.
- Sommige aanvallers hebben een meer financieel motief. Organisaties betalen goed geld voor mensen die data poisoning aanvallen uitvoeren tijdens de training van je model om ervoor te zorgen dat zodra het model wordt ingezet, het robuuster is.
- Andere door organisaties gehuurde aanvallers hebben een motief van integriteit dat ze willen bereiken. Zij kunnen aanvallen doen om de robuustheid van het ingezette model te waarborgen.
Wat is de impact van een hack?
De impact van een hack op jouw data science modellen kan financiële schade of reputatieschade zijn.
Financiële impact
Ten eerste kan een hack een enorme financiële impact hebben. Denk er maar eens over na. Wie wil dat eindeloze rechtszaken van slachtoffers jouw bankrekening leegtrekken. Bijvoorbeeld: je werkt in een bedrijf waarbij veiligheid cruciaal is en afhankelijk van nauwkeurige classificatie van beelden (laten we automatisch gebroken botten classificeren op MRI-beelden). Zo'n aanval kan zorgen voor een verkeerde classificatie van je MRI-beelden, waardoor een patiënt een verkeerde diagnose krijgt en zijn gezondheid in gevaar komt.
Reputatieschade
Een aanval op je model kan ertoe leiden dat je aansprakelijk wordt gesteld om vele redenen, waaronder discriminatie of inbreuk op de privacy. Deze leiden uiteraard tot grote reputatieschade. Door verkeerde trainingsgegevens op te nemen, zal jouw model bijvoorbeeld alleen negatieve advertenties tonen aan bepaalde mensen op basis van hun religie of erfelijkheid.