Systémy AI/ML modelování hrozeb a závislosti

Autoři: Andrew Marshall, Jugal Parikh, Emre Kiciman a Ram Shankar Siva Kumar

Zvláštní poděkování patří Raulovi Rojasovi a pracovní skupině AETHER zabývající se bezpečnostním inženýrstvím.

Listopad 2019

Tento dokument je výstupem pracovní skupiny AETHER zabývající se technickou praxí pro AI a doplňuje stávající postupy SDL pro modelování hrozeb tím, že poskytuje nové pokyny ke stanovování hrozeb a snižování rizik při ohrožení specifické pro oblast AI a strojového učení. Má sloužit jako reference při kontrolách návrhu zabezpečení:

  1. Produkty/služby pracující s AI nebo převzetí závislostí na službách založených na AI/ML

  2. produktů a služeb vytvářených od základu tak, aby podporovaly AI/ML

Tradiční snižování rizik při ohrožení zabezpečení je důležitější než kdy dřív. K vytvoření základu pro zabezpečení produktů, ze kterých vychází tyto pokyny, jsou zcela zásadní požadavky, které stanovuje Security Development Lifecycle. Selhání při řešení tradičních bezpečnostních hrozeb napomáhá útokům směrovaným konkrétně na AI/ML, kterými se zabývá tento dokument, na úrovni softwaru i ve fyzickém světě a také výrazně zjednodušuje napadení na nižších úrovních softwarového stacku. Úvod do zcela nových bezpečnostních hrozeb v této oblasti najdete v tématu Zajištění budoucnosti AI a strojového učení v Microsoftu.

Sady dovedností techniků zabezpečení a odborníků na data se obvykle nepřekrývají. Tyto pokyny poskytují způsob, jak můžou obě skupiny strukturovaně konverzovat o těchto zcela nových hrozbách a omezeních rizik, aniž by se technici zabezpečení museli stát odborníky na data nebo naopak.

Tento dokument je rozdělený na dvě části:

  1. Část Nové klíčové aspekty modelování hrozeb se zaměřuje na nové způsoby myšlení a nové otázky, které byste si měli položit při modelování hrozeb pro systémy AI/ML. Tuto část by si měli projít odborníci na data i technici zabezpečení, protože bude fungovat jako jejich příručka při diskuzích o modelování hrozeb a určování priorit při omezování rizik.
  2. Část Hrozby specifické pro AI/ML a omezení jejich rizik obsahuje podrobnosti o konkrétních útocích a také konkrétní kroky pro zmírnění rizika, které se dnes využívají při ochraně produktů a služeb Microsoftu před těmito hrozbami. Tato část je určená primárně pro odborníky na data, kteří můžou na základě výstupu z procesu modelování hrozeb nebo kontroly zabezpečení potřebovat implementovat konkrétní snižování rizik.

Tyto doprovodné materiály jsou uspořádané podle taxonomie nežádoucích hrozeb strojového učení pojmenované Režimy selhání ve strojovém učení, jejímiž autory jsou Ram Shankar Siva Kumar, David O’Brien, Kendra Albert, Salome Viljoen a Jeffrey Snover. Pokyny ke správě incidentů týkající se určení bezpečnostních hrozeb podrobně popsaných v tomto dokumentu najdete v panelu chyb SDL pro AI/ML Hrozby. Všechny tyto živé dokumenty se budou v průběhu času vyvíjet s krajinou hrozeb.

Nové klíčové aspekty modelování hrozeb Změna pohledu na hranice vztahů důvěryhodnosti

Předpokládejte, že může dojít k napadení nebo útoku falešnými záznamy na data, která používáte k trénování, i na poskytovatele dat. Zjistěte, jak detekovat neobvyklé a škodlivé datové položky, jak mezi nimi rozlišovat a jak se z nich zotavit.

Souhrn

Úložiště trénovacích dat a systémy, které je hostují, jsou součástí vašeho oboru modelování hrozeb. Největší bezpečnostní hrozbou současnosti v oblasti strojového učení je útok falešnými záznamy na data, a to kvůli absenci standardních mechanismů detekce a omezování rizik v této oblasti v kombinaci se závislostí na nedůvěryhodných nebo nekurátorovaných sadách dat jako na zdroji trénovacích dat. K zajištění důvěryhodnosti vašich dat a toho, aby nedocházelo k cyklům trénování s nesmyslným vstupem a výstupem, je zcela zásadní sledovat původ a rodokmen dat.

Otázky, které byste si měli položit při kontrole zabezpečení

  • Kdyby došlo k útoku falešnými záznamy na vaše data nebo s nimi někdo manipuloval, jak byste to zjistili?

    - Jakou telemetrii potřebujete k detekci nerovnoměrné distribuce v kvalitě trénovacích dat?

  • Provádíte trénování na základě vstupů od uživatelů?

    -Jaký druh ověřování vstupu/sanitizace provádíte u tohoto obsahu?

    -Je struktura těchto dat zdokumentovaná podobně jako datové listy pro datové sady?

  • Pokud vytrénujete online úložiště dat, jaké kroky provedete, abyste zajistili zabezpečení připojení mezi vaším modelem a daty?

    - Mají způsob, jak hlásit kompromisy spotřebitelům v jejich informačních kanálech?

    – Dokáží to vůbec?

  • Jak citlivá jsou data, která používáte k trénování?

    - Katalogujete ho nebo řídíte přidání, aktualizaci nebo odstranění položek dat?

  • Můžou být výstupem vašeho modelu citlivá data?

    – Získala se tato data se svolením zdroje?

  • Jsou výstupem modelu pouze výsledky nezbytné k dosažení jeho cíle?

  • Vrací váš model nezpracované skóre spolehlivosti nebo jakýkoli jiný přímý výstup, který by mohl být zaznamenán a duplikován?

  • Jaký je dopad trénovacích dat, která se obnovují útokem nebo invertováním modelu?

  • Pokud úrovně spolehlivosti výstupu modelu náhle poklesnou, můžete zjistit, jak/proč, a také data, která to způsobila?

  • Definovali jste pro svůj model vstup ve správném formátu? Co děláte, abyste zajistili, že vstupy odpovídají tomuto formátu, a co děláte, když neodpovídají?

  • Pokud jsou vaše výstupy nesprávné, ale nezpůsobují hlášení chyb, jak byste věděli?

  • Víte, jestli jsou vaše trénovací algoritmy odolné vůči nežádoucím vstupům na matematické úrovni?

  • Jak se zotavit z nežádoucí kontaminace trénovacích dat?

    - Můžete izolovat nebo umístit nežádoucí obsah do karantény a znovu trénovat ovlivněné modely?

    - Můžete vrátit zpět nebo obnovit model předchozí verze pro opětovné trénování?

  • Využíváte u nekurátorovaného veřejného obsahu zpětnovazební učení?

  • Začněte přemýšlet nad rodokmenem vašich dat – kdybyste zjistili problém, dokázali byste ho vysledovat až do okamžiku, kdy v sadě dat vznikl? Pokud ne, je to problém?

  • Zjistěte, odkud trénovací data pocházejí a identifikují statistické normy, abyste mohli začít rozumět tomu, jak vypadají anomálie.

    - Jaké prvky trénovacích dat jsou ohrožené vnějšími vlivy?

    – Kdo může přispívat do sad dat, které používáte k trénování?

    - Jak byste zaútočili na zdroje trénovacích dat, aby ublížili konkurentovi?

  • Nežádoucí perturbace (všechny varianty)

  • Útok falešnými záznamy na data (všechny varianty)

Příklady útoků

  • Vynucení neškodných e-mailů, které se mají klasifikovat jako spam nebo způsobit nedetekci škodlivého příkladu

  • Vstupy vytvořené útočníkem, které snižují úroveň spolehlivosti správné klasifikace, zejména ve scénářích s vysokým následkem

  • Útočník náhodně vloží šum do zdrojových dat, která se klasifikují, aby snížil pravděpodobnost, že se v budoucnu používá správná klasifikace, čímž se model efektivně zmýlí.

  • Kontaminace trénovacích dat za účelem vynucení chybné klasifikace vybraných datových bodů, což vede k provádění konkrétních akcí nebo vynechání systému

Identifikace akcí, které můžou provést modely, produkty nebo služby a které můžou zákazníkům způsobit škodu online nebo ve fyzickém světě

Souhrn

Útoky na systémy AI/ML, které se nezmírní, si můžou najít cestu do fyzického světa. Jakýkoli scénář, který je možné překroutit tak, aby uživatelům způsobil psychickou nebo fyzickou újmu, pro váš produkt nebo službu představuje katastrofické riziko. To se týká i jakýchkoli citlivých dat o vašich zákaznících, která používáte k trénování, a rozhodnutí ohledně návrhu, která můžou způsobit únik těchto privátních datových bodů.

Otázky, které byste si měli položit při kontrole zabezpečení

  • Provádíte trénování s nežádoucími příklady? Jaký dopad mají na výstup vašeho modelu ve fyzickém světě?

  • Jak váš produkt nebo služba vnímá trollování? Jak ho můžete rozpoznat a reagovat na něj?

  • Co by trvalo, než váš model vrátí výsledek, který vaši službu zamítá, aby odepřel přístup legitimním uživatelům?

  • Jaký dopad by mělo zkopírování nebo krádež vašeho modelu?

  • Dá se váš model použít k odvození členství jednotlivce v určité skupině nebo jednoduše k trénovacím datům?

  • Může útočník způsobit poškození reputace nebo zpětné lomítko žádosti o přijetí změn na váš produkt tím, že ho vynutí provést konkrétní akce?

  • Jak zpracováváte správně formátovaná, ale nadměrně zkreslená data, například z trollů?

  • Pro každý způsob interakce s modelem nebo jejich dotazování je možné tuto metodu vyslechnout za účelem zveřejnění trénovacích dat nebo funkcí modelu?

  • Odvození členství

  • Inverze modelu

  • Krádež modelu

Příklady útoků

  • Rekonstrukce a extrakce trénovacích dat opakovaným dotazováním modelu na maximální spolehlivost výsledků

  • Duplikace samotného modelu vyčerpávajícím porovnáváním dotazů a odpovědí

  • Dotazování modelu způsobem, který odhalí konkrétní prvek privátních dat, byl součástí trénovací sady.

  • Zmanipulování autonomního vozidla k ignorování značek STOP nebo semaforů

  • Zmanipulování konverzačních robotů k trollování neškodných uživatelů

Identifikace všech zdrojů závislostí AI/ML a front-endových prezentačních vrstev v dodavatelském řetězci dat a modelů

Souhrn

Řada útoků na AI a strojové učení začíná oprávněným přístupem k rozhraním API zveřejněným za účelem poskytnout přístup k dotazování modelu. Vzhledem k souvisejícím rozsáhlým zdrojům dat a bohatým uživatelským prostředím představuje ověřený, ale nepatřičný (toto je šedá zóna) přístup třetích stran k vašim modelům riziko, protože může fungovat jako prezentační vrstva nad službou od Microsoftu.

Otázky, které byste si měli položit při kontrole zabezpečení

  • Kteří zákazníci/partneři se ověřují pro přístup k vašim rozhraním API modelu nebo služeb?

    – Můžou fungovat jako prezentační vrstva nad vaší službou?

    – Můžete v případě napadení rychle odvolat jejich přístup?

    - Jaká je vaše strategie obnovení v případě škodlivého použití vaší služby nebo závislostí?

  • Může třetí strana vytvořit kolem modelu fasádu, aby ji znovu účelovala a poškodila Microsoft nebo jeho zákazníky?

  • Poskytují vám zákazníci trénovací data přímo?

    – Jakým způsobem zajišťujete zabezpečení těchto dat?

    – Co když jsou data škodlivá a cílem je vaše služba?

  • Jak v tomto případě vypadá falešně pozitivní výsledek? Jaký je dopad falešně pozitivního výsledku?

  • Můžete sledovat a měřit odchylku pravdivě pozitivních a falešně pozitivních sazeb v různých modelech?

  • Jaký druh telemetrie potřebujete k prokázání důvěryhodnosti výstupu modelu zákazníkům?

  • Identifikujte všechny závislosti třetích stran ve vašem ML/trénovacím dodavatelském řetězci dat – nejen open source software, ale také poskytovatelé dat.

    Proč je používáte a jak ověříte jejich důvěryhodnost?

  • Používáte předem vytvořené modely od třetích stran nebo odesíláte trénovací data poskytovatelům MLaaS třetích stran?

  • Vytvořte si seznam nejnovějších zpráv o útocích na podobné produkty nebo služby. Když víte, ke kolika hrozbám AI/ML u různých typů modelů dochází, jaký dopad by tyto útoky měly na vaše vlastní produkty?

  • Přeprogramování neuronové sítě

  • Nežádoucí příklad ve fyzickém světě

  • Poskytovatelé strojového učení se zlými úmysly obnovující trénovací data

  • Útoky na dodavatelský řetězec strojového učení

  • Model implementovaný zadními vrátky

  • Napadení závislostí specifických pro strojové učení

Příklady útoků

  • Poskytovatel strojového učení se zlými úmysly, který do vašeho modelu s využitím určitého obejití nasadí trojského koně

  • Nežádoucí zákazník najde chybu zabezpečení v běžné závislosti operačního systému, kterou používáte, nahraje datovou část trénování, která bude ohrozit vaši službu.

  • Bezútěšný partner používá rozhraní API pro rozpoznávání obličeje a vytváří vrstvu prezentace ve vaší službě, aby vytvořil hluboké Fakes.

Hrozby specifické pro AI/ML a omezení jejich rizik

Č. 1: Nežádoucí perturbace

Description

Při útocích ve stylu perturbace útočník nepozorovaně upraví dotaz tak, aby z modelu nasazeného v produkčním prostředí získal požadovanou odpověď [1]. Jedná se o porušení integrity vstupů modelu, které vede k útokům ve stylu testování neplatnými vstupními daty, jehož konečným důsledkem nemusí nutně být porušení přístupu nebo EOP, ale ohrožení výkonu klasifikace modelu. Toho můžou využít také tzv. trollové, kteří používají určitá cílová slova takovým způsobem, že je umělá inteligence zakáže, a tím efektivně zajistí odepření služeb legitimním uživatelům se jménem, které odpovídá zakázanému slovu.

Diagram that shows increasing attack difficulty when complexity is increasing and capability is decreasing.[24]

Variantní #1a: Cílová chybná klasifikace

V tomto případě útočníci vygenerují ukázku, která není ve vstupní třídě cílového klasifikátoru, ale model ji klasifikuje jako tuto konkrétní vstupní třídu. Nežádoucí ukázka může z lidského pohledu vypadat jako náhodný šum, ale útočníci mají určité znalosti cílového systému strojového učení, které jim umožňují vygenerovat bílý šum, který není náhodný, ale zneužívá určité aspekty cílového modelu. Nežádoucí osoba poskytne vstupní ukázku, která není legitimní, ale cílový systém ji klasifikuje jako legitimní třídu.

Příklady

A diagram showing that a photo of targeted noise is incorrectly classified by an image classifier resulting in a photo of a bus.[6]

Omezení rizik

  • Reinforcing Adversarial Robustness using Model Confidence Induced by Adversarial Training [19]: Autoři navrhují architekturu HCNN (Highly Confident Near Neighbor), která kombinuje informace o spolehlivosti s vyhledáváním nejbližších sousedních pixelů a zvyšuje tak odolnost základního modelu vůči nežádoucím vlivům. To může pomoct odlišovat mezi správnými a chybnými predikcemi modelu v okolí bodu ze základní distribuce trénování.

  • Attribution-driven Causal Analysis [20]: Autoři zkoumají souvislost mezi odolností vůči nežádoucí perturbaci a vysvětlením jednotlivých rozhodnutí vygenerovaných modely strojového učení na základě přisuzování. Uvádějí, že nežádoucí vstupy nejsou robustní v oblasti přisuzování, tj. že maskování některých funkcí s vysokou mírou přisuzování vede u nežádoucích příkladů k nerozhodnosti modelu strojového učení ohledně změn. Naproti tomu přirozené vstupy jsou v oblasti přisuzování robustní.

    An illustration showing two approaches to determining how input values 9,9 becomes misclassified as 9,4.[20]

Tyto přístupy můžou zvýšit odolnost modelů strojového učení vůči nežádoucím útokům, protože oklamání tohoto dvouvrstvého kognitivního systému vyžaduje nejen útok na původní model, ale také zajištění, aby přisouzení vygenerované pro nežádoucí příklad bylo podobné původním příkladům. Aby byl nežádoucí útok úspěšný, muselo by dojít k napadení obou systémů současně.

Tradiční obdoby

Vzdálené zvýšení oprávnění, protože útočník teď má kontrolu nad vaším modelem

Severity

Kritická

Variantní #1b: Chybná klasifikace zdroje nebo cíle

Tato varianta je charakterizovaná jako snaha útočníka donutit model, aby pro zadaný vstup vrátil požadovaný popisek. Tím se obvykle vynutí vrácení falešně pozitivního nebo falešně negativního výsledku z modelu. Konečným výsledkem je rafinované převzetí kontroly nad přesností klasifikace modelu, čímž útočník získá možnost libovolně vytvářet určitá obcházení.

Přestože má tento útok výrazně škodlivý dopad na přesnost klasifikace, také jeho provedení může být časově náročnější, protože nežádoucí osoba musí zmanipulovat zdrojová data nejen tak, aby se už nepopisovala správně, ale také tak, aby se popisovala s použitím konkrétního požadovaného podvodného popisku. Tyto útoky často zahrnují několik kroků nebo pokusů o vynucení chybné klasifikace [3]. Pokud je model náchylný k útokům na transferové učení, které vynucují cílenou chybnou klasifikaci, nemusí existovat žádné zjistitelné stopy provozu útočníka, protože testovací útoky je možné provádět offline.

Příklady

Vynucení klasifikace neškodných e-mailů jako spamu nebo zajištění neodhalení škodlivého příkladu. Tyto útoky se označují také jako útoky spočívající ve vyhýbání se modelu nebo v napodobování.

Omezení rizik

Reaktivní nebo obranná opatření v případě odhalení

  • Implementujte prahovou hodnotu minimální doby mezi voláními rozhraní API, které poskytuje výsledky klasifikace. Tím se zpomalí vícekrokové testování útoků, protože se zvýší množství času potřebné k nalezení úspěšné perturbace.

Proaktivní nebo ochranná opatření

  • Feature Denoising for Improving Adversarial Robustness [22]: Autoři vyvíjejí novou síťovou architekturu, která díky odstraňování šumu z vlastností zvyšuje odolnost vůči nežádoucím vlivům. Sítě konkrétně obsahují bloky, které pomocí jiných než místních prostředků nebo dalších filtrů odstraňují šum z vlastností a celé sítě jsou kompletně natrénované. V kombinaci s trénováním proti nežádoucím vlivům sítě s odstraňováním šumu z vlastností výrazně zvyšují úroveň odolnosti vůči nežádoucím vlivům v případě útoků typu bílá i černá skříňka.

  • Trénování proti nežádoucím vlivům a uspořádání: Trénujte s využitím známých nežádoucích ukázek a zajistěte tak odolnost vůči škodlivým vstupům. Můžete se na to dívat také jako na formu uspořádání, která penalizuje normu vstupních gradientů a usnadňuje fungování funkce předpovědi klasifikátoru (zvětšuje rozpětí vstupů). To zahrnuje správné klasifikace s nižší mírou spolehlivosti.

A graph showing the change in the slope of the prediction function with adversarial training.

Investujte do vývoje monotónní klasifikace a využijte možnost výběru z monotónních funkcí. Tím se zajistí, že nežádoucí osoba nebude moct obejít klasifikátor jednoduchým doplněním vlastností z negativní třídy [13].

  • Stlačování vlastností [18] umožňuje posílit modely DNN prostřednictvím rozpoznávání nežádoucích příkladů. Omezuje prostor pro hledání, který má nežádoucí osoba k dispozici, tím, že spojuje ukázky, které odpovídají mnoha různým vektorům vlastností v původním prostoru, do jediné ukázky. Díky porovnávání předpovědi modelu DNN pro původní vstup s předpovědí pro stlačený vstup může stlačování vlastností pomoct odhalit nežádoucí příklady. Pokud model pro původní a stlačený příklad vygeneruje výrazně odlišné výstupy, vstup je pravděpodobně nežádoucí. Díky měření neshody mezi předpověďmi a výběru prahové hodnoty může systém pro legitimní příklady vygenerovat výstup se správnou předpovědí a nežádoucí vstupy zamítnout.

    An illustration showing the result of feature squeezing.

    A diagram showing the flow of input through a feature-squeezing framework.[18]

  • Certified Defenses against Adversarial Examples [23]: Autoři navrhují metodu založenou na částečně jednoznačném uvolňování, jehož výstupem je certifikát dokládající, že pro danou síť a testovací vstup žádný útok nemůže způsobit, že chyba překročí určitou hodnotu. Vzhledem k tomu, že je tento certifikát rozlišitelný, autoři ho dále společně optimalizují s využitím parametrů sítě a nabízí adaptivní regularizátor, který podporuje odolnost vůči všem útokům.

Opatření v rámci reakce

  • Vydávat upozornění na výsledky klasifikace s vysokou odchylkou mezi klasifikátory, zejména pokud od jednoho uživatele nebo malé skupiny uživatelů.

Tradiční obdoby

Vzdálené zvýšení oprávnění

Severity

Kritická

Variantní #1c: Náhodné chybné klasifikace

Toto je zvláštní varianta, kde cílovou klasifikací útočníka může být cokoli jiného než legitimní klasifikace zdroje. Útok obvykle zahrnuje náhodnou injektáž šumu do klasifikovaných zdrojových dat za účelem snížit pravděpodobnost použití správné klasifikace v budoucnu [3].

Příklady

Two photos of a cat. One photo is classified as a tabby cat. After adversarial perturbation, the other photo is classified as guacamole.

Omezení rizik

Stejné jako u varianty 1a.

Tradiční obdoby

Dočasné odepření služeb

Severity

Důležité

Variantní #1d: Snížení spolehlivosti

Útočník může sestavit vstupy tak, aby snížil úroveň spolehlivosti správné klasifikace, a to zejména ve vysoce rizikových scénářích. Tento typ útoku může mít také podobu velkého množství falešně pozitivních výsledků, které mají zahltit správce nebo monitorovací systémy podvodnými upozornění, která jsou k nerozeznání od legitimních upozornění [3].

Příklady

Two photos of a stop sign. The photo on the left shows a confidence level of 96 percent. After adversarial perturbation, the photo on the right shows a confidence level of 13 percent.

Omezení rizik
  • Kromě akcí zahrnutých ve variantě #1a je možné omezení událostí použít ke snížení objemu výstrah z jednoho zdroje.
Tradiční obdoby

Dočasné odepření služeb

Severity

Důležité

#2a cílené otravy dat

Description

Cílem útočníka je kontaminovat model počítače vygenerovaný ve fázi trénování, aby se předpovědi nových dat upravily ve fázi testování[1]. Při cílených útocích falešnými záznamy chce útočník nesprávně klasifikovat konkrétní příklady a tím způsobit provedení nebo vynechání konkrétních akcí.

Příklady

Odeslání antivirového softwaru jako malwaru, vynucení jeho chybné klasifikace jako škodlivého softwaru a zabránění použití cílového antivirového softwaru v klientských systémech

Omezení rizik
  • Definujte senzory anomálií, abyste se mohli podívat na denní distribuci dat a upozorňovat na varianty.

    -Měření denní odchylky trénovacích dat, telemetrie pro nerovnoměrnou distribuci nebo posun

  • Ověřování vstupu s využitím sanitizace i kontroly integrity

  • Při útoku falešnými záznamy se vkládají trénovací ukázky vybočující z normálu. Dvě hlavní strategie reakce na tuto hrozbu:

    -Sanitizace dat / ověření: odebrání vzorků otravy z trénovacích dat - Bagging pro boj s útoky na otravu [14]

    – Obrana RONI (Reject on Negative Impact) [15]

    -Robustní Učení: Vyberte algoritmy učení, které jsou robustní v přítomnosti vzorků otravy.

    – Jeden takový přístup je popsaný ve studii [21], ve které autoři řeší problém útoků falešnými záznamy na data ve dvou krocích: 1) zavedení robustní metody faktorizace matic za účelem obnovení pravého podprostoru a 2) nový robustní způsob regrese hlavních součástí umožňující vyřadit nežádoucí instance na základě podkladů obnovených v kroku 1. Charakterizují nezbytné a postačující podmínky pro úspěšné obnovení pravého podprostoru a představují hranici očekávaných ztrát předpovědí v porovnání se „základní pravdou“ (ground truth).

Tradiční obdoby

Hostitel s trojským koněm, prostřednictvím kterého může útočník přetrvávat v síti. Jsou ohrožená trénovací nebo konfigurační data, která se ingestují nebo kterým se důvěřuje při vytváření modelů.

Severity

Kritická

#2b diskriminovat otravu dat

Popis

Cílem tohoto útoku je narušit kvalitu nebo integritu cílové sady dat. Mnoho sad dat je veřejných, nedůvěryhodných nebo nekurátorovaných, takže vznikají další obavy ohledně možnosti taková porušení integrity dat v první řadě vůbec identifikovat. Trénování na základě neznámým způsobem napadených dat představuje situaci s nesmyslným vstupem a výstupem. Po zjištění takové situace je potřeba provést posouzení, aby se zjistilo, v jakém rozsahu došlo k porušení zabezpečení dat, a provést umístění do karantény a přetrénování.

Příklady

Společnost scrapuje z dobře známého a důvěryhodného webu data o futures kontraktech na ropu pro trénování vlastních modelů. Web poskytovatele dat je následně ohrožený útokem prostřednictvím injektáže SQL. Útočník může datovou sadu libovolně poškodit a trénovaný model nemůže nijak zjistit, že došlo k poškození dat.

Omezení rizik

Stejné jako u varianty 2a.

Tradiční obdoby

Ověřené odepření služeb pro prostředek s vysokou hodnotou

Severity

Důležité

Útoky na inverzi modelů č. 3

Description

Může dojít k získání privátních funkcí použitých v modelech strojového učení [1]. To zahrnuje rekonstrukci privátních trénovacích dat, ke kterým útočník nemá přístup. V biometrické komunitě se tyto útoky označují také jako gradientní útoky [16, 17]. Toho se dosáhne nalezením vstupu, který maximalizuje vrácenou úroveň spolehlivosti v závislosti na klasifikaci odpovídající cíli [4].

Příklady

Two images of a person. One image is blurry and the other image is clear.[4]

Omezení rizik
  • Rozhraní pro modely natrénované z citlivých dat vyžadují silné řízení přístupu.

  • Omezte četnost dotazů, které model povoluje.

  • Implementujte brány mezi uživateli nebo volajícími a skutečným modelem provedením ověřování vstupu u všech navrhovaných dotazů, odmítnutím čehokoli, co neodpovídá definici správnosti vstupu modelu, a vrácením pouze minimálního množství informací potřebných k tomu, aby bylo užitečné.

Tradiční obdoby

Cílené zpřístupnění tajných informací

Severity

Na standardním panelu chyby SDL je výchozí závažnost Důležitá, ale v případě extrahování citlivých nebo identifikovatelných osobních údajů by se zvýšila na Kritickou.

Útok na odvození členství č. 4

Description

Útočník může zjistit, jestli byl daný datový záznam součástí trénovací sady dat vašeho modelu, nebo ne [1]. Výzkumníci dokázali předpovědět hlavní zákrok pacienta (např. operaci, kterou pacient podstoupil) na základě atributů (např, věk, pohlaví a nemocnice) [1].

An illustration showing the complexity of a membership inference attack. Arrows show the flow and relationship between training data prediction data.[12]

Omezení rizik

Výzkumné studie prokazující proveditelnost tohoto útoku naznačují, že by při omezování rizik mohla být účinná rozdílová ochrana soukromí [4, 9]. V Microsoftu se stále jedná o novou oblast a pracovní skupina AETHER zabývající se bezpečnostním inženýrstvím doporučuje rozvíjet dovednosti a investovat do výzkumu v této oblasti. Tento výzkum by musel vyjmenovat funkce rozdílové ochrany soukromí a vyhodnotit jejich praktickou efektivitu při omezování rizik a následně navrhnout způsob, jakým by se tato ochrana mohla transparentně dědit na našich platformách online služeb podobně, jako kompilace kódu v sadě Visual Studio poskytuje ve výchozím nastavení zapnutou ochranu transparentní pro vývojáře i uživatele.

Do jisté míry může být při omezování rizik efektivní využít vyřazování neuronů a vrstvení modelů. Využitím vyřazování neuronů se kromě zvýšení odolnosti neuronové sítě vůči tomuto typu útoku zvýší také výkon modelů [4].

Tradiční obdoby

Ochrana osobních údajů v datech. Odvozují se informace o zahrnutí datového bodu v trénovací sadě, ale samotná trénovací data se nezpřístupňují.

Severity

Toto je problém s ochranou osobních údajů, a ne problém se zabezpečením. Vzhledem k překrývání domén se tento problém řeší v doprovodných materiálech k modelování hrozeb, ale jakákoli odpověď na tomto místě by se řídila ochranou osobních údajů, a ne zabezpečením.

Č. 5 Model ukrást

Popis

Útočníci na základě legitimního dotazování modelu znovu vytvoří základní model. Funkce nového modelu jsou stejné jako funkce základního modelu [1]. Po opětovném vytvoření modelu je možné jeho invertováním získat informace o funkcích a odvozovat závěry z trénovacích dat.

  • Řešení rovnic – V případě modelu, který prostřednictvím výstupu rozhraní API vrací pravděpodobnosti tříd, může útočník sestavit dotazy, kterými zjistí neznámé proměnné v modelu.

  • Hledání cest – útok, který využívá specifika rozhraní API k extrahování "rozhodnutí" přijatých stromem při klasifikaci vstupu [7].

  • Útok na přenosnost – Nežádoucí osoba může natrénovat místní model, například odesíláním dotazů předpovědí do cílového modelu, a pomocí něj sestavit nežádoucí příklady, které se přenesou do cílového modelu [8]. Pokud útočník extrahuje kopii vašeho modelu a zjistí, že je zranitelný vůči určitému typu nežádoucího vstupu, může vyvíjet nové útoky na váš model nasazený v produkčním prostředí zcela offline.

Příklady

V prostředích, kde model strojového učení slouží k detekci nežádoucího chování, jako je identifikace spamu, klasifikace malwaru nebo detekce síťových anomálií, může extrakce modelu usnadnit útoky spočívající ve vyhýbání se obraně [7].

Omezení rizik

Proaktivní nebo ochranná opatření

  • Minimalizujte nebo obfuskujte podrobnosti vrácené v rozhraních API pro predikce a přitom zachováte jejich užitečnost pro "upřímné" aplikace [7].

  • Definujte dobře formátovaný dotaz pro vstupy modelu a vrátí pouze výsledky v reakci na dokončené vstupy ve správném formátu odpovídající danému formátu.

  • Vracejte zaokrouhlené hodnoty spolehlivosti. Většina legitimních volajících nepotřebuje výsledek s přesností na několik desetinných míst.

Tradiční obdoby

Neověřené úmyslné poškozování systémových dat v režimu jen pro čtení cílené na zpřístupnění informací s vysokou hodnotou

Severity

Důležitá v modelech citlivých na zabezpečení, jinak Střední

#6 Neurální síť – přeprogramování

Popis

Pomocí speciálně sestaveného dotazu může nežádoucí osoba přeprogramovat systémy strojového učení na úkol, který se liší od původního záměru tvůrce [1].

Příklady

Slabé řízení přístupu k rozhraní API pro rozpoznávání obličeje umožňující třetím stranám začlenit aplikace s cílem poškodit zákazníky Microsoftu, jako je například generátor tzv. deep fakes (realistické fotomontáže a videomontáže).

Omezení rizik
  • Silné vzájemné ověřování na klientském<> serveru a řízení přístupu k rozhraním modelu

  • Vyřazení problémových účtů

  • Identifikujte a vynucujte pro vaše rozhraní API smlouvu SLA. Určete přijatelnou dobu potřebnou k vyřešení problému po jeho nahlášení a zajistěte, aby se problém po vypršení platnosti smlouvy SLA dál nereprodukoval.

Tradiční obdoby

Toto je scénář zneužití. V tomto případě byste místo otevírání incidentu zabezpečení měli spíše jednoduše zakázat účet pachatele.

Severity

Důležitá až kritická

#7 Nežádoucí příklad ve fyzické doméně (bity atomů>)

Description

Nežádoucí příklad je vstup nebo dotaz odeslaný ze škodlivé entity s jediným cílem – oklamat systém strojového učení [1].

Příklady

Tyto příklady se můžou projevit ve fyzickém světě, například v případě autonomního vozidla zmanipulovaného k jízdě přes značku STOP jejím nasvícením určitou barvou světla (nežádoucí vstup), což přinutí systém rozpoznávání obrazu, aby ji ignoroval.

Tradiční obdoby

Zvýšení oprávnění, vzdálené spuštění kódu

Omezení rizik

Tyto útoky se projeví, protože se nezmírňovaly problémy ve vrstvě strojového učení (vrstva datového & algoritmu pod rozhodováním řízeným AI). Stejně jako u jakéhokoli jiného softwarového *nebo* fyzického systému může být vrstva pod cílem vždy napadena tradičními vektory. Z tohoto důvodu jsou tradiční postupy zabezpečení důležitější než kdy dřív, a to zejména u vrstvy nezmírněných ohrožení zabezpečení (vrstva dat a algoritmů), která se používá mezi AI a tradičním softwarem.

Severity

Kritická

Č. 8 Zlými ML poskytovatelé, kteří můžou obnovit trénovací data

Popis

Poskytovatel se zlými úmysly zadními vrátky implementuje algoritmus, kterým získá privátní trénovací data.  Pouze na základě modelu se mu podařilo rekonstruovat obličeje a texty.

Tradiční obdoby

Cílené zpřístupnění informací

Omezení rizik

Výzkumné studie prokazující proveditelnost tohoto útoku naznačují, že by při omezování rizik mohlo být účinné homomorfní šifrování. V Microsoftu se do této oblasti v současné době příliš neinvestuje a pracovní skupina AETHER zabývající se bezpečnostním inženýrstvím doporučuje rozvíjet dovednosti a investovat do výzkumu v této oblasti. Tento výzkum by musel vyjmenovat principy homomorfního šifrování a vyhodnotit jejich praktickou efektivitu při omezování rizik v případě setkání s poskytovateli strojového učení jako služby se zlými úmysly.

Severity

Důležitá, pokud jde o identifikovatelné osobní údaje, jinak Střední

Č. 9, který napadá ML dodavatelského řetězce

Description

Vzhledem k tomu, že trénování algoritmů vyžaduje velké množství prostředků (datových a výpočetních), současná praxe je opakovaně používat modely natrénované velkými společnostmi a mírně je upravovat pro konkrétní úlohy (např. ResNet je oblíbený model rozpoznávání obrazu od Microsoftu). Tyto modely se spravují v Model Zoo (Caffe hostuje oblíbené modely rozpoznávání obrazu). Při tomto útoku nežádoucí osoba útočí na modely hostované v Caffe a tím poškozuje zdroj pro všechny ostatní.  [1]

Tradiční obdoby
  • Ohrožení zabezpečení závislosti na třetí straně nesouvisející se zabezpečením

  • Nevědomé hostování malwaru na App Storu

Omezení rizik
  • Pokud je to možné, minimalizujte pro modely a data množství závislostí na třetích stranách.

  • Začleňte tyto závislosti do svého procesu modelování hrozeb.

  • Využijte silné ověřování, řízení přístupu a šifrování mezi systémy třetích stran.

Severity

Kritická

Č. 10 Backdoor Machine Learning

Popis

Proces trénování zajišťuje externě třetí strana se zlými úmysly, která úmyslně poškozuje trénovací data a doručila model s trojským koněm, který vynucuje cílené chybné klasifikace, například klasifikaci určitého viru jako neškodného [1]. Jedná se o riziko scénáře generování modelů strojového učení jako služby.

An example showing how mis-classifications can adversely affect training data. One photo is a correctly classified stop sign. After poisoning, the second photo is labeled as a speed limit sign.[12]

Tradiční obdoby
  • Ohrožení zabezpečení závislosti na třetí straně související se zabezpečením

  • Ohrožení zabezpečení mechanismu aktualizace softwaru

  • Ohrožení zabezpečení certifikační autority

Omezení rizik
Reaktivní nebo obranná opatření v případě odhalení
  • Poškození je již provedeno po zjištění této hrozby, takže model a všechna trénovací data poskytnutá poskytovatelem zlými úmysly nemohou být důvěryhodná.
Proaktivní nebo ochranná opatření
  • Trénujte všechny citlivé modely interně.

  • Data trénování katalogu nebo zajištění, že pocházejí od důvěryhodné třetí strany se silnými postupy zabezpečení

  • Model hrozeb interakce mezi poskytovatelem MLaaS a vašimi vlastními systémy

Opatření v rámci reakce
  • Stejná jako v případě ohrožení zabezpečení externí závislosti
Severity

Kritická

Č. 11 Zneužít závislosti softwaru systému ML

Popis

Při tomto útoku útočník NEMANIPULUJE s algoritmy. Místo toho zneužívá chyby zabezpečení softwaru, jako jsou přetečení vyrovnávací paměti nebo skriptování mezi weby [1]. Pořád je jednodušší napadnout vrstvy softwaru pod AI/ML než útočit přímo na vrstvu učení, a proto jsou nezbytné tradiční postupy snižování rizik při ohrožení zabezpečení podrobně popsané v Security Development Lifecycle.

Tradiční obdoby
  • Ohrožení zabezpečení závislosti na open source softwaru

  • Ohrožení zabezpečení webového serveru (XSS, CSRF, chyba ověřování vstupu rozhraní API)

Omezení rizik

Spojte se se svým týmem zabezpečení a postupujte podle příslušných osvědčených postupů pro Security Development Lifecycle a kontrolu provozního zabezpečení.

Severity

Proměnná až do úrovně Kritická v závislosti na typu ohrožení zabezpečení tradičního softwaru

Bibliografie

[1] Ram Shankar Siva Kumar, David O’Brien, Kendra Albert, Salome Viljoen a Jeffrey Snover. Režimy selhání ve strojovém učení, https://docs.microsoft.com/security/failure-modes-in-machine-learning

[2] Pracovní skupina AETHER zabývající se bezpečnostním inženýrstvím, virtuální tým zabývající se původem a rodokmenem dat

[3] Wei a kol. Adversarial examples in deep learning: Characterization and divergence, https://arxiv.org/pdf/1807.00051.pdf

[4] Salem a kol. ML-leaks: Model and data independent membership inference attacks and defenses on machine learning models, https://arxiv.org/pdf/1806.01246v2.pdf

[5] M. Fredrikson, S. Jha a T. Ristenpart. Model inversion attacks that exploit confidence information and basic countermeasures. In: Proceedings of the 2015 ACM SIGSAC Conference on Computer and Communications Security (CCS).

[6] Nicolas Papernot & Patrick McDaniel – nežádoucí příklady v Machine Learning AIWTB 2017

[7] Florian Tramèr (École Polytechnique Fédérale de Lausanne (EPFL)), Fan Zhang (Cornell University), Ari Juels (Cornell Tech), Michael K. Reiter (The University of North Carolina at Chapel Hill) a Thomas Ristenpart (Cornell Tech). Stealing machine learning models via prediction APIs

[8] Florian Tramèr, Nicolas Papernot, Ian Goodfellow, Dan Boneh a Patrick McDaniel. The space of transferable adversarial examples

[9] Yunhui Long, Vincent Bindschaedler, Lei Wang, Diyue Bu, Xiaofeng Wang, Haixu Tang, Carl A. Gunter a Kai Chen. Understanding membership inferences on well-generalized learning models

[10] Simon-Gabriel a kol. Adversarial vulnerability of neural networks increases with input dimension, ArXiv 2018

[11] Lyu a kol. A unified gradient regularization family for adversarial examples, ICDM 2015

[12] Battista Biggioa a Fabio Roli. Wild patterns: Ten years after the rise of adversarial machine learning – NeCS 2019

[13] Inigo Incer a kol. Adversarially robust malware detection using monotonic classification

[14] Battista Biggio, Igino Corona, Giorgio Fumera, Giorgio Giacinto a Fabio Roli. Bagging classifiers for fighting poisoning attacks in adversarial classification tasks

[15] Vylepšený odmítnutí negativního dopadu obrany Hongjiang Li a Patrick P.K. Chan

[16] Adler. Vulnerabilities in biometric encryption systems. 5th Int’l Conf. AVBPA, 2005

[17] Galbally, McCool, Fierrez, Marcel a Ortega-Garcia. On the vulnerability of face verification systems to hill-climbing attacks. Patt. Rec., 2010

[18] Weilin Xu, David Evans a Yanjun Qi. Feature squeezing: Detecting adversarial examples in deep neural networks. 2018 Network and Distributed System Security Symposium. 18–21 února

[19] Xi Wu, Uyeong Jang, Jiefeng Chen, Lingjiao Chen a Somesh Jha. Reinforcing adversarial robustness using model confidence induced by adversarial training

[20] Susmit Jha, Sunny Raj, Steven Fernandes, Sumit Kumar Jha, Somesh Jha, Gunjan Verma, Brian Jalaian a Ananthram Swami. Attribution-driven causal analysis for detection of adversarial examples

[21] Chang Liu a kol. Robust linear regression against training data poisoning

[22] Cihang Xie, Yuxin Wu, Laurens van der Maaten, Alan Yuille a Kaiming He. Feature denoising for improving adversarial robustness

[23] Aditi Raghunathan, Jacob Steinhardt a Percy Liang. Certified defenses against adversarial examples