Wie Data Poisoning Modelle für maschinelles Lernen schädigt

Data Poisoning kann Machine-Learning-Modelle ungenau machen, was möglicherweise zu schlechten Entscheidungen auf der Grundlage fehlerhafter Ergebnisse führt. [...]

Data Poisoning oder Model Poisoning-Angriffe beinhalten die Verunreinigung der Trainingsdaten eines Machine Learning-Modell (c) pixabay.com

Die Verbreitung von maschinellem Lernen ist in den letzten zehn Jahren explodiert, was zum Teil auf das Aufkommen von Cloud Computing zurückzuführen ist, das Hochleistungsrechner und Speicher für alle Unternehmen zugänglich gemacht hat. In dem Maße, in dem Anbieter maschinelles Lernen in Produkte aller Branchen integrieren und Benutzer sich bei ihren Entscheidungen auf die Ergebnisse der Algorithmen verlassen, warnen Sicherheitsexperten vor Angriffen, die darauf abzielen, die Technologie zu missbrauchen.

Die meisten Social-Networking-Plattformen, Online-Videoplattformen, großen Shopping-Seiten, Suchmaschinen und anderen Dienste verfügen über eine Art von Empfehlungssystem, das auf maschinellem Lernen basiert. Die Filme und Serien, die den Nutzern auf Netflix gefallen, die Inhalte, die sie auf Facebook mögen oder mit anderen teilen, die Hashtags und Likes auf Twitter, die Produkte, die Verbraucher auf Amazon kaufen oder ansehen, die Anfragen, die Nutzer in die Google-Suche eingeben – all das wird in die maschinellen Lernmodelle dieser Websites eingespeist, um bessere und genauere Empfehlungen zu geben.

Es ist nicht neu, dass Angreifer versuchen, diese Recommendation-Systeme zu beeinflussen und zu verzerren, indem sie gefälschte Accounts verwenden, um bestimmte Produkte oder Inhalte hoch- oder herunterzustufen, zu teilen oder zu fördern. Benutzer können auf dem Untergrundmarkt Dienste kaufen, um solche Manipulationen durchzuführen, ebenso wie „Troll-Farmen“, die in Desinformationskampagnen zur Verbreitung von Fake News eingesetzt werden.

„Theoretisch kann ein Angreifer, wenn er weiß, wie ein bestimmter Benutzer mit einem System interagiert hat, einen Angriff so gestalten, dass er diesem Benutzer eine Empfehlung gibt, z. B. ein YouTube-Video, eine bösartige App oder einen gefälschten Account, dem er folgen soll“, erklärt Andrew Patel, Forscher im Artificial Intelligence Center of Excellence beim Sicherheitsanbieter F-Secure, in einem Blogbeitrag. „Algorithmische Manipulationen können also für eine Vielzahl von Zwecken genutzt werden, darunter Desinformation, Phishing-Betrug, Veränderung der öffentlichen Meinung, Förderung unerwünschter Inhalte und Diskreditierung von Personen oder Marken. Man kann sogar jemanden dafür bezahlen, die Autovervollständigungsfunktion der Google-Suche zu manipulieren.“

Was ist Data Poisoning?

Data Poisoning oder Model Poisoning-Angriffe beinhalten die Verunreinigung der Trainingsdaten eines Machine Learning-Modells. Data Poisoning wird als Integritätsangriff betrachtet, da die Manipulation der Trainingsdaten die Fähigkeit des Modells beeinträchtigt, korrekte Vorhersagen auszugeben. Andere Arten von Angriffen können auf der Grundlage ihrer Auswirkungen ähnlich klassifiziert werden:

  • Vertraulichkeit, bei der die Angreifer potenziell vertrauliche Informationen über die Trainingsdaten ableiten können, indem sie Eingaben in das Modell einspeisen
  • Verfügbarkeit, bei der die Angreifer ihre Eingaben verschleiern, um das Modell auszutricksen und so eine korrekte Klassifizierung zu umgehen
  • Replikation, bei der Angreifer das Modell zurückentwickeln können, um es zu replizieren und lokal zu analysieren, um Angriffe vorzubereiten oder es zu ihrem eigenen finanziellen Vorteil auszunutzen

Der Unterschied zwischen einem Angriff, der darauf abzielt, die Vorhersage oder Klassifizierung eines Modells zu umgehen, und einem Poisoning-Angriff ist die Dauer: Beim Poisoning ist das Ziel des Angreifers, dass seine Eingaben als Trainingsdaten akzeptiert werden. Die Dauer des Angriffs unterscheidet sich ebenfalls, da sie vom Trainingszyklus des Modells abhängt; es kann Wochen dauern, bis der Angreifer sein Vergiftungsziel erreicht.

Data Poisoning kann entweder in einem Blackbox-Szenario gegen Klassifizierer durchgeführt werden, die sich auf Benutzer-Feedback verlassen, um ihr Lernen zu aktualisieren, oder in einem Whitebox-Szenario, bei dem der Angreifer Zugriff auf das Modell und seine privaten Trainingsdaten erhält, möglicherweise irgendwo in der Lieferkette, wenn die Trainingsdaten aus mehreren Quellen gesammelt werden.

Beispiele für Data Poisoning

In einem Cybersicherheitskontext könnte das Ziel ein System sein, das maschinelles Lernen verwendet, um Netzwerkanomalien zu erkennen, die auf verdächtige Aktivitäten hinweisen könnten. Wenn ein Angreifer weiß, dass ein solches Modell vorhanden ist, kann er versuchen, nach und nach Datenpunkte einzuführen, die die Genauigkeit dieses Modells verringern, so dass schließlich die Dinge, die er erreichen will, nicht mehr als anomal gekennzeichnet werden, so Patel gegenüber CSO. Dies wird auch als Modellverzerrung bezeichnet.

Ein Beispiel aus der Praxis sind Angriffe auf die Spam-Filter von E-Mail-Anbietern. In einem Blogbeitrag von 2018 über Angriffe durch maschinelles Lernen sagte Elie Bursztein, der das Anti-Missbrauchs-Forschungsteam bei Google leitet: „In der Praxis sehen wir regelmäßig, wie einige der fortschrittlichsten Spammer-Gruppen versuchen, den Gmail-Filter aus der Bahn zu werfen, indem sie massive Mengen an Spam-E-Mails als Nicht-Spam melden […] Zwischen Ende November 2017 und Anfang 2018 gab es mindestens vier bösartige, groß angelegte Versuche, unseren Klassifikator zu verfälschen.“

Ein weiteres Beispiel ist der Google-Scandienst VirusTotal, den viele Antiviren-Anbieter nutzen, um ihre eigenen Daten zu erweitern. Es ist bekannt, dass Angreifer ihre Malware gegen VirusTotal testen, bevor sie sie in der freien Wildbahn einsetzen, um so der Erkennung zu entgehen, aber sie können den Dienst auch für hartnäckigere Vergiftungsaktionen nutzen. Tatsächlich gab es 2015 Berichte, dass absichtliche Sample-Poisoning-Angriffe über VirusTotal durchgeführt wurden, um Antiviren-Anbieter dazu zu bringen, gutartige Dateien als bösartig zu erkennen.

Keine einfache Lösung

Das Hauptproblem bei Data Poisoning ist, dass es nicht einfach zu beheben ist. Modelle werden in bestimmten Abständen mit neu gesammelten Daten neu trainiert, je nach Verwendungszweck und Präferenz des Besitzers. Da die Vergiftung in der Regel im Laufe der Zeit und über eine gewisse Anzahl von Trainingszyklen erfolgt, kann es schwer zu erkennen sein, wann die Vorhersagegenauigkeit zu schwanken beginnt.

Um die Auswirkungen des Poisoning rückgängig zu machen, wäre eine zeitaufwändige historische Analyse der Eingaben für die betroffene Klasse erforderlich, um alle schlechten Datenproben zu identifizieren und diese zu entfernen. Dann müsste eine Version des Modells aus der Zeit vor dem Angriff neu trainiert werden. Bei großen Datenmengen und einer großen Anzahl von Angriffen ist ein solches Neutraining jedoch einfach nicht durchführbar und die Modelle werden nie korrigiert, so Patel von F-Secure.

„In der akademischen Welt gibt es im Moment diese ganze Idee, die ich für wirklich cool halte und die noch nicht praktisch ist, aber wir werden dahin kommen, sie nennt sich Machine Unlearning“, sagt Hyrum Anderson, Principal Architect für Trustworthy Machine Learning bei Microsoft, gegenüber CSO. „Für GPT-3 [ein von OpenAI entwickeltes Sprachvorhersagemodell] lagen die Kosten bei 16 Millionen Dollar oder so, um das Modell einmal zu trainieren. Wenn es vergiftet und im Nachhinein identifiziert würde, könnte es sehr teuer werden, die vergifteten Daten zu finden und neu zu trainieren.

Aber wenn ich verlernen könnte, wenn ich einfach sagen könnte: „Hey, für diese Daten, mach ihre Effekte und meine Gewichtungen rückgängig“, dann könnte das ein wesentlich günstigerer Weg sein, eine Verteidigung aufzubauen. Ich denke, praktische Lösungen für das maschinelle Verlernen sind noch Jahre entfernt. Also ja, die Lösung an diesem Punkt ist, mit guten Daten neu zu trainieren und das kann super schwer zu bewerkstelligen oder teuer sein.“

Vorbeugen und erkennen

Angesichts der Schwierigkeiten, vergiftete Modelle zu reparieren, müssen sich die Modellentwickler auf Maßnahmen konzentrieren, die entweder Angriffsversuche blockieren oder bösartige Eingaben erkennen, bevor der nächste Trainingszyklus stattfindet – Dinge wie die Überprüfung der Eingabevalidität, Ratenbegrenzung, Regressionstests, manuelle Moderation und die Verwendung verschiedener statistischer Verfahren zur Erkennung von Anomalien.

Beispielsweise sollte eine kleine Gruppe von Konten, IP-Adressen oder Benutzern nicht einen großen Teil der Trainingsdaten des Modells ausmachen. Es kann eingeschränkt werden, wie viele Eingaben eines einzelnen Benutzers in die Trainingsdaten aufgenommen werden oder mit welcher Gewichtung. Neu trainierte Klassifikatoren können mit früheren verglichen werden, um ihre Ergebnisse zu vergleichen, indem sie mit „Dark Launches“ nur an eine kleine Teilmenge von Nutzern ausgerollt werden. In seinem Blog-Beitrag empfahl Bursztein von Google auch die Erstellung eines goldenen Datensatzes, den jedes neu trainierte Modell genau vorhersagen muss, was dabei helfen kann, Regressionen zu erkennen.

Laut Anderson ist Data Poisoning nur ein Spezialfall eines größeren Problems namens Data Drift, das in Systemen auftritt. Jeder bekommt aus verschiedenen Gründen schlechte Daten, und es gibt eine Menge Forschung darüber, wie man mit Datendrift umgehen kann, sowie Tools, um signifikante Änderungen in den Betriebsdaten und der Modellleistung zu erkennen, auch von großen Cloud-Computing-Anbietern. Azure Monitor und Amazon SageMaker sind Beispiele für Dienste, die solche Funktionen beinhalten.

„Wenn die Leistung Ihres Modells nach einer Umschulung einen dramatischen Einbruch erleidet, ist es wahrscheinlich unerheblich, ob es sich um einen Vergiftungsangriff oder nur um einen schlechten Datenstapel handelt, und Ihr System kann das erkennen“, sagt Anderson. „Wenn es Ihnen gelingt, das zu beheben, dann können Sie entweder diesen gezielten Vergiftungsangriff oder den schlechten Datenstapel, der beim Trainieren Ihres Modells versehentlich in Ihre Datenöffnung gelangt ist, ausmerzen. Diese Art von Tools sind also ein guter Anfang und gehören zu diesem KI-Risikomanagement-Framework, das sich in der Branche zu etablieren beginnt.“

Um Data Poisoning durchführen zu können, müssen Angreifer auch Informationen darüber erlangen, wie das Modell funktioniert. Daher ist es wichtig, so wenig Informationen wie möglich preiszugeben und starke Zugriffskontrollen sowohl für das Modell als auch für die Trainingsdaten einzurichten. In dieser Hinsicht ist der Schutz vor maschinellem Lernen mit allgemeinen Sicherheitspraktiken und Hygiene verbunden – Dinge wie die Einschränkung von Berechtigungen, die Aktivierung von Protokollierung und die Verwendung von Datei- und Datenversionierung.

„Ein Großteil der Sicherheit bei KI und maschinellem Lernen hat mit sehr grundlegenden Lese-/Schreibberechtigungen für Daten oder den Zugriff auf Modelle oder Systeme oder Server zu tun“, sagt Anderson. „Es ist ein Fall, in dem ein kleiner übermäßig erlaubter Datenanbieterdienst oder eine Datei in einem Verzeichnis zu einem Poisoning-Angriff führen könnte.“

Gehen Sie zum Angriff über

So wie Unternehmen regelmäßig Penetrationstests gegen ihre Netzwerke und Systeme durchführen, um Schwachstellen zu entdecken, sollten sie dies auch auf den Kontext des maschinellen Lernens ausweiten und das maschinelle Lernen als Teil der Sicherheit des größeren Systems oder der Anwendung behandeln.

„Ich denke, das Naheliegendste, was Entwickler bei der Erstellung eines Modells tun sollten, ist, es tatsächlich selbst anzugreifen, um zu verstehen, wie es angegriffen werden kann, und indem sie verstehen, wie es angegriffen werden kann, können sie dann versuchen, Verteidigungsmaßnahmen gegen diese Angriffe aufzubauen“, sagt Patel. „Ihre Erkennung wird auf dem basieren, was Sie aus dem Red Teaming herausgefunden haben, so dass Sie, wenn Sie Angriffe gegen das Modell zusammenstellen, verstehen können, wie die Datenpunkte aussehen würden, und dementsprechend würden Sie Mechanismen bauen, die in der Lage sind, die Datenpunkte zu verwerfen, die nach Vergiftung aussehen.“

Anderson beschäftigt sich bei Microsoft aktiv mit diesem Thema. In einem kürzlich gehaltenen Vortrag auf der USENIX Enigma-Konferenz stellte er eine Red-Team-Übung bei Microsoft vor, bei der es seinem Team gelang, ein maschinelles Lernmodell zurückzuentwickeln, das von einem Ressourcenbereitstellungsdienst verwendet wurde, um eine effiziente Zuweisung und Zuordnung von virtuellen Ressourcen zu physischer Hardware sicherzustellen.

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

Ohne direkten Zugriff auf das Modell zu haben, gelang es dem Team, genügend Informationen darüber zu finden, wie es Daten sammelt, um eine lokale Modellreplik zu erstellen und Umgehungsangriffe darauf zu testen, ohne vom Live-System entdeckt zu werden. Auf diese Weise konnten sie herausfinden, welche Kombinationen von virtuellen Maschinen, Datenbanken, deren Größen und Replikationsfaktoren, zu welchen Tageszeiten und in welchen Regionen sie vom realen System anfordern sollten, um mit hoher Wahrscheinlichkeit sicherzustellen, dass das maschinelle Lernmodell die angeforderten Ressourcen auf physischen Hosts, die auch Hochverfügbarkeitsdienste hosten, überprovisionieren würde.

Mit diesen überprovisionierten Ressourcen starteten sie einen Noisy-Neighbour-Angriff mit Nutzdaten, die eine hohe CPU- und RAM-Auslastung hatten, um eine Denial-of-Service-Attacke gegen die Hochverfügbarkeitsdienste auszulösen, die ebenfalls auf derselben Hardware gehostet wurden. „Der Angriff hatte frappierende Ähnlichkeiten mit den Aktivitäten von Angreifern auf jedem IT-System“, so Anderson in seinem Vortrag. „Es gab eine Exfiltration, eine Umgehung und eine Ausführung, die schließlich mit der Beeinträchtigung der Service-Verfügbarkeit endete.“

*Lucian Constantin ist Senior-Autor bei CSO und berichtet über Informationssicherheit, Privatsphäre und Datenschutz.


Mehr Artikel

Be the first to comment

Leave a Reply

Your email address will not be published.


*