KI-Sicherheitsmaßnahmen konzentrieren häufig die KI-Kernmodelle, doch wir haben bereits gezeigt, wie wichtig die umgebende Infrastruktur und die Cloud-Services für die Sicherheit von KI-Anwendungen sind, insbesondere mit dem Aufkommen von KI-as-a-Service. diese Erkenntnisse soll nun das Beispiel eines Angriffs auf die Lieferkette des maschinellen Lernens (ML) unterstreichen. Er zeigt, wie Fehlkonfigurationen und Sicherheitslücken in Amazon SageMaker- und Bedrock-Implementierungen die ML-Pipeline gefährden können.
Übliche AWS-KI-Services
Amazon Bedrock ist vollständig verwalteter Service, der die Erstellung und Skalierung von generativen KI-Anwendungen vereinfacht und eine vielfältige Auswahl an leistungsstarken Basismodellen (FMs) bietet, die von KI-Anbietern entwickelt wurden und die Erstellung von Anwendungen wie Chatbots und Inhaltsgeneratoren ermöglichen, ohne dass fortgeschrittene KI-Kenntnisse erforderlich sind.
Amazon SageMaker ist ebenfalls ein verwalteter Service, der das Erstellen, Trainieren und Bereitstellen von Modellen für maschinelles Lernen mit verschiedenen Tools wie Notebooks, Debuggern, Profilers, Pipelines und MLOps vereinfacht.
AWS KI-Pipelines
Entwickler können SageMaker für die umfassende Modellentwicklung und Amazon Bedrock für die nahtlose Bereitstellung nutzen und so einen effizienten Workflow für die Erstellung von KI-Anwendungen schaffen. SageMaker bietet eine robuste Suite von Tools für die Datenvorbereitung, das Modelltraining, die Abstimmung von Hyperparametern und die Auswertung. Dank der Unterstützung verschiedener Algorithmen und Frameworks lassen sich hochwertige Modelle erstellen, die auf spezifischen Anforderungen zugeschnitten sind. Sobald ein Modell trainiert ist, kann es in der Model Registry von SageMaker registriert werden. Dies erleichtert die Versionierung und Verwaltung und stellt sicher, dass Teams die effektivsten Modelle verfolgen und einsetzen können.
Entwickler haben die Möglichkeit, spezifische, angepasste Modelle für maschinelles Lernen, die in Amazon SageMaker erstellt wurden, in Amazon Bedrock zu importieren, sodass eine nahtlose Integration möglich wird und die KI-Workflows verbessert werden. Bedrock bietet Zugriff auf Basismodelle verschiedener Anbieter, die eine weitere Optimierung und Integration mit SageMaker-Modellen zur Verbesserung der generativen Fähigkeiten ermöglichen. Diese Synergie zwischen SageMaker und Bedrock rationalisiert nicht nur den Workflow von der Entwicklung bis zur Bereitstellung, sondern optimiert auch die Ressourcennutzung und die Kosten.
ML-Lieferketteangriff
Wie bereits erwähnt, sind die heutigen ML-Lieferketten und Dienstleistungen vor allem aus den folgenden zwei Gründen in Gefahr:
- Schlechte Programmierpraktiken
- Fehlkonfigurationen in den Cloud-Plattformen, die KI-Dienste bereitstellen
Das folgende Szenario zeigt einen Angriff auf die Lieferkette, und demonstriert beide Risiken in den Cloud-Plattformen. Auch wird die Bedeutung einer sicheren ML-Pipeline sowie einer effektiven Überwachung von Ereignissen mit Protokollen wie CloudTrail hervorgehoben.
Das beschriebene Angriffsszenario wurde vom AWS-Team gründlich geprüft. Wir sind übereingekommen, dass es keine inhärenten Schwächen oder Sicherheitslücken in Amazon Bedrock oder SageMaker gibt. AWS bietet umfassende Sicherheitsfunktionen, die, wenn sie richtig konfiguriert sind, solche Risiken abschwächen können - diese werden später in diesem Blog näher erläutert. Bei diesem Szenario handelt es sich um ein eigens erstelltes Beispiel, das häufige Fehlkonfigurationen und Fehler, die Entwickler in KI-Umgebungen machen, sowie deren Sicherheitsauswirkungen veranschaulichen soll.

Bild 1. Ziel-AWS-KI-Pipeline (eine Beschreibung bietet der Originalbeitrag)
Der Angriff

Bild 2. Der Angriffspfad
Schritt 1 – Übernahme der SageMaker-Notebook-Instanz durch Herunterladen einer bösartigen Erweiterung (AML.T0010.001 – Kompromittierung der ML-Lieferkette: ML-Software)
SageMaker kann für Angreifer zu einem beliebten Einstiegspunkt in alle AWS-basierten KI-Pipelines werden. Ein Cloud-Sicherheitsbericht von 2024 zeigt, dass 82 % der Unternehmen, die das Produkt einsetzen, mindestens ein Notebook haben, das mit dem Internet verbunden ist. Um diesen Vektor zu nutzen, erstellt der Angreifer eine bösartige Erweiterung, die öffentlich gehostet wird, und Entwickler laden das bösartige Paket als Erweiterung eines Drittanbieters herunter. Wie im Diagramm dargestellt, ist eines der Notebooks, das im Dev-AWS-Konto gehostet wird, falsch konfiguriert, um einen direkten Internetzugang zu ermöglichen, und der Entwickler verwendet regelmäßig öffentliche Erweiterungen von Drittanbietern darauf, was es dem Angreifer erleichtert, die Payload auf das Notebook zu übertragen.
Die Täter können öffentliche Repositories für das Hosting ihrer bösartigen Packages erstellen. Um die Auswirkungen zu demonstrieren, haben wir ein bösartiges Python-Paket erstellt, das bei erfolgreicher Installation und Ausführung eines bestimmten Funktionsaufrufs im SageMaker-Notebook eine Hintertür öffnet und dem Angreifer eine Reverse-Shell zur Verfügung stellt. Einzelheiten umfasst der Originalbeitrag.
Schritt 2 - Auflistung in der SageMaker-Notebook-Instanz (AML.T0007 - ML-Artefakte entdecken)
Sobald die Reverse Shell eingerichtet wurde, kann ein Angreifer die Systembefehle ausführen, AWS-Dienste auflisten und Ressourcen in der AWS-Umgebung erstellen. Danach kann er sich auch Zugriff auf die Trainingsdaten, das Modell und auch auf den internen Github-Link zum Hochladen von Updates für die Modelle in der Produktion verschaffen. So ist er in der Lage, die Vortrainingsdaten oder das Modell zu manipulieren und in die Produktion zu schieben.
Schritt 3 - Privilegienerweiterung mithilfe der SageMaker-Notebook Execution-Rolle (AML.T0049 - Ausnutzung einer öffentlich zugänglichen Anwendung)
Schritt 4 - Konto-übergreifender Rollenmissbrauch
Schritt 5 – Schutz vor Nachrichtenmanipulation durch Blockieren der Sicherheitsbarriere – Link-Injektion (AML.T0011.000 - Ausführung durch Benutzer: Unsichere ML-Artefakte)
Schritt 6 – Chat-Anwendungsnutzer wird infiziert (AML.T0048.003 - Externe Schäden: Nutzerschaden)
Einzelheiten zu allen Schritten liefert der Originalbeitrag. Ebenso können sie dort die Beschreibung eines zweiten Angriffs zu Code Injection in Bedrock Guardrail lesen. Trend Vision One erfasst CloudTrail-Logs, um kritische und verdächtige AWS-Ereignisse im AWS-Konto zu überwachen. Eine Liste der Entdeckungen zu den Angriffsabläufen beinhaltet ebenfalls der Originalbeitrag.
Bewährte Verfahren zur Sicherung von ML-Pipelines in AWS
Für den Schutz der ML-Pipelines in AWS sollen die folgenden Empfehlungen dienen:
1. Prinzip der geringsten Privilegien
- Implementieren Sie IAM-Rollen und -Richtlinien nach dem Prinzip der geringsten Privilegien und stellen Sie sicher, dass alle Benutzer, Rollen und Dienste in der ML-Pipeline nur über die erforderlichen Berechtigungen verfügen.
2. Verwenden Sie die integrierten AWS-Sicherheitsfunktionen von SageMaker und Bedrock
- Aktivieren und konfigurieren Sie zusätzliche Sicherheitsfunktionen, die von SageMaker und Bedrock angeboten werden: Verschlüsselung, VPC- und Netzwerkisolierung sowie Filter für sensible Informationen.
3. Best Practices für die ML-Codierung
- Bereinigung von Modellausgaben, um das Leaking von sensibler Daten zu verhindern. Dazu gehört das Herausfiltern personenbezogener Daten (PII) oder anderer vertraulicher Daten mithilfe von Bedrock Guardrail.
- Integration von robusten Test-Frameworks, um die Erkennung von Angriffen, wie z. B. Datenmanipulation sicherzustellen.
- Versionskontrolle über Daten, Modelle und Pipeline-Konfigurationen, um die Rückverfolgbarkeit und die Möglichkeit eines Rollbacks im Falle eines Problems zu gewährleisten.
- Vorsicht bei Erweiterungen von Drittanbietern oder anfälligen Bibliotheken. Automatisieren Sie Sicherheitsscans und Abhängigkeitsprüfungen, um zu verhindern, dass Schwachstellen in die Produktionsumgebung gelangen.
- Implementieren einer Sandbox für die Ausführung von Code, der von Codegenerierungsmodellen generiert wurde, bevor Sie ihn in einer Produktionsumgebung ausführen.
4. Überwachung von ML-Operations Pipeline-Ereignissen
- Richten Sie eine umfassende Überwachung ein, um alle ML-Pipeline-Aktivitäten zu verfolgen:
- Verwenden Sie AWS CloudTrail und CloudWatch, um sowohl SageMaker- als auch Bedrock-Vorgänge zu überwachen. Stellen Sie sicher, dass die Protokollierung von Modellaufrufen aktiviert ist, um zu verfolgen, wann und wie Modelle verwendet werden.
- Implementieren Sie eine Anomalieerkennung mit Amazon CloudWatch Metrics und Alarmen, um automatisch benachrichtigt zu werden, wenn ungewöhnliche Aktivitäten oder Leistungsprobleme in der ML-Pipeline auftreten.
5. Implementierung von erklärbarer KI (XAI)
- Erhöhen Sie die Sicherheit durch erklärbare KI-Techniken (XAI), die Transparenz in die Entscheidungsprozesse des Modells bringen. Dies kann bei der Identifizierung und Eindämmung von Angriffen helfen, wie z. B. Manipulation des Modells oder Erkennung von Voreingenommenheit: Überwachen Sie kontinuierlich auf Verzerrungen, die während des Trainings oder durch externe Angriffsvektoren entstanden sein könnte, und ermöglichen Sie so schnelle Korrekturmaßnahmen.