SageMaker-Notebook über Lifecycle-Konfiguration kapern
Kann einem Notebook ein Startskript anhängen und Code als seine Ausführungsrolle ausführen.
Ermöglicht Eskalation nur in Kombination. All diese sind zusammen erforderlich:
sagemaker:CreateNotebookInstanceLifecycleConfigsagemaker:UpdateNotebookInstancesagemaker:StopNotebookInstancesagemaker:StartNotebookInstancesagemaker:UpdateNotebookInstance kann ein Startskript an ein Notebook anhängen und Code als dessen Ausführungsrolle ausführen, aber nur, wenn sie zusammen mit sagemaker:CreateNotebookInstanceLifecycleConfig, sagemaker:StopNotebookInstance, sagemaker:StartNotebookInstance gehalten wird. Gemeinsam gehalten erreichen sie Administratorzugriff.
Warum es gefährlich ist
Ein Principal kann eine Notebook-Lifecycle-Konfiguration mit einem vom Angreifer kontrollierten Startskript erstellen, ein bestehendes Notebook, das als Zielrolle läuft, stoppen, die Konfiguration mit sagemaker:UpdateNotebookInstance anhängen und das Notebook wieder starten. Beim Start wird das Skript als Zielrolle ausgeführt und liest die aktiven Anmeldeinformationen der Zielrolle, ohne iam:PassRole, weil die Zielrolle bereits an das Notebook gebunden ist. Ist die Zielrolle privilegiert, ist dies eine vollständige Privilege Escalation gegen ein Notebook, dem bereits vertraut wurde.
In MITRE ATT&CK entspricht dies T1578, Modify Cloud Compute Infrastructure, unter der Taktik Privilege Escalation. AWS protokolliert dies in CloudTrail als CreateNotebookInstanceLifecycleConfig, UpdateNotebookInstance, StopNotebookInstance, StartNotebookInstance. Der Aufruf ist in CloudTrail gut sichtbar und hebt sich von normaler Aktivität ab.
Erkennung
CreateNotebookInstanceLifecycleConfigUpdateNotebookInstanceStopNotebookInstanceStartNotebookInstanceVoraussetzungen
Eine bestehende SageMaker-Notebook-Instanz mit einer Execution Role; Berechtigung, eine Lifecycle-Konfiguration zu erstellen und das Notebook zu stoppen/aktualisieren/starten.
MITRE ATT&CK
T1578 · Modify Cloud Compute InfrastructureTaktik
Privilege Escalation
Eine Maßnahme, die ihn beseitigen würde: sagemaker:UpdateNotebookInstance / Lifecycle-Config-Aktionen bei Notebooks beschränken, die eine privilegierte Ausführungsrolle tragen.
Ob sie angewendet werden sollte, hängt davon ab, wie die Berechtigung in Ihrer Umgebung verwendet wird, daher ist es eine geschäftliche Entscheidung und keine automatische Behebung. Dieselbe Berechtigung kann in einem Konto tragend und in einem anderen reines Risiko sein.
Pathbreak bestätigt, ob dieser Pfad in Ihrem Konto auflösbar ist, stuft ihn gegenüber den anderen danach ein, wie viel er eröffnet, und nutzt Ihr Bedrohungsmodell und Ihren Geschäftskontext, um zu zeigen, welche Pfade es wert sind, unterbrochen zu werden.
Fragen
Was erlaubt sagemaker:UpdateNotebookInstance?
Kann einem Notebook ein Startskript anhängen und Code als seine Ausführungsrolle ausführen.
Was ist außerdem nötig, damit sagemaker:UpdateNotebookInstance gefährlich ist?
Es wird erst zur Eskalation, wenn es mit sagemaker:CreateNotebookInstanceLifecycleConfig, sagemaker:StopNotebookInstance, sagemaker:StartNotebookInstance kombiniert wird. Für sich allein reicht es nicht aus, was die Kombination leicht übersehbar macht.
Wie wird das Kapern eines SageMaker-Notebooks über eine Lifecycle-Konfiguration erkannt?
Achten Sie in CloudTrail auf CreateNotebookInstanceLifecycleConfig, UpdateNotebookInstance, StopNotebookInstance, StartNotebookInstance. Der Aufruf ist in CloudTrail laut und hebt sich von der normalen Aktivität ab.
Wie unterbricht man diesen Pfad?
Eine Maßnahme, die ihn beseitigen würde, ist: Beschränken Sie sagemaker:UpdateNotebookInstance / lifecycle-config-Aktionen bei Notebooks, die eine privilegierte Ausführungsrolle tragen. Ob sie angewendet werden sollte, hängt davon ab, wie die Berechtigung in Ihrem Konto verwendet wird, es ist also eine geschäftliche Entscheidung und keine automatische Behebung.
Welche MITRE ATT&CK Technik ist das?
T1578, Modify Cloud Compute Infrastructure, unter der Taktik Privilege Escalation.
Verwandte Pfade
Referenzen
Finden Sie dies in Ihrem eigenen Konto
Wir führen einen schreibgeschützten Scan eines AWS-Kontos durch und zeigen Ihnen, welche dieser Pfade existieren, nach Blast-Radius priorisiert, mit der Änderung, die jeden einzelnen unterbricht. Erste validierte Pfade innerhalb der Stunde.