[English]Cyberkriminelle greifen Systeme über die beliebte Open Source-Software Jupyter Notebook mit Ransomware an. Das Team Nautilus, die auf den cloud-nativen Technologie-Stack spezialisierte Forschungseinheit von Aqua Security, hat diese neue Angriffsmethode entdeckt. Aqua Security ist der größte Anbieter für reine cloud native Security. Das Team konnte erstmals einen auf Python basierenden Ransomware-Angriff aufdecken, der auf die bei Datenexperten beliebte Open-Source-Software Jupyter Notebook zielt.
Anzeige
Jupyter Notebook ist eine web-basierte interaktive Umgebung, mit der Jupyter-Notebook-Dokumente erstellt werden können. Ein Jupyter-Notebook-Dokument ist ein JSON-Dokument mit einem versionierten Schema, das aus einer Liste von Eingabe- und Ausgabezellen besteht, die jeweils Code, Text und Plots enthalten können. Die Dateinamensendung ist „.ipynb". Ein Jupyter Notebook kann aus der Browseroberfläche heraus in verschiedene Formate konvertiert werden (HTML, PDF, LaTeX und Folien für Präsentationen).
Der Angriff
In einer Mitteilung schreibt das Nautilus-Team, dass sich die Angreifer zunächst über falsch konfigurierte Umgebungen Zugang zum Server verschaffen. Dann führen sie ein Ransomware-Skript aus, das jede Datei in einem bestimmten Pfad auf dem Server verschlüsselt. Um den Angriff zu verschleiern, löscht sich das Script nach der Ausführung selbst. Da Jupyter Notebook zur Analyse von Daten und zur Erstellung von Datenmodellen verwendet wird, kann dieser Angriff zu erheblichen Schäden in Unternehmen führen, wenn diese Umgebungen nicht ordnungsgemäß gesichert sind.
Souce: Aqua Security
Die Forscher richteten einen Honeypot mit einer Jupyter-Anwendung ein, die mit dem Internet verbunden war und eine reale Unternehmensumgebung simulieren sollte. Sie enthielt somit Zugriff auf echte Instanzen von Jupyter Notebooks und Rohdaten, die der Angreifer verschlüsseln konnte. Tracee of Aqua Security, ein Open-Source-Laufzeit-Sicherheits- und Forensik-Tool für Linux, wurde zur Erkennung des Angriffs eingesetzt.
Anzeige
Wie kann man sich schützen?
Für Nutzer von Jupyter Notebook gibt es einige Empfehlungen, um sich gegen diese Methode zu schützen:
- Verwenden Sie Token oder eine andere Authentifizierungsmethode, um den Zugriff auf Ihre Datenentwicklungsanwendung zu kontrollieren.
- Stellen Sie sicher, dass Sie SSL verwenden, um die Daten während der Übertragung zu schützen.
- Begrenzen Sie den eingehenden Datenverkehr zur Anwendung, indem Sie entweder den Internetzugang vollständig blockieren oder, wenn die Umgebung einen Internetzugang erfordert, Netzwerkregeln oder VPN zur Kontrolle des eingehenden Datenverkehrs verwenden. Es wird auch empfohlen, den ausgehenden Zugriff zu beschränken.
- Führen Sie Ihre Anwendungen mit einem nicht privilegierten Benutzer oder einem Benutzer mit eingeschränkten Rechten aus.
- Seien Sie sich sicher, dass Sie alle Benutzer des Jupyter-Notebooks kennen.
Sie können die Benutzer in einer Sqlite3-Datenbank abfragen, die Sie unter folgendem Pfad finden sollten:
'./root/.local/share/jupyter/nbsignatures.db'
Wenn der SSH-Zugang zum Server aktiviert ist, können Sie auch die Dateien mit den autorisierten SSH-Schlüsseln überprüfen, um sicherzustellen, dass Sie alle Schlüssel kennen und dass es keine unbekannten Benutzer oder Schlüssel gibt.
Aqua Security hat einen detaillierten Blog veröffentlicht, in dem der Honeypot des Team Nautilus und die Kill Chain der beobachteten Angriffe detailliert beschrieben werden: Threat Alert: First Python Ransomware Attack Targeting Jupyter Notebooks
Anzeige
Jupyter Notebook, das ist dieses Mistteil, welches im Sommer 2021 i. Z. mit der Microsoft Azure Cosmos DB für eine der schlimmsten Cloud-Schwachstellen (1) sorgte. Schon Anwender resp. Data Scientists haben ihre Mühe mit dem Teil (2). Jede Wette, das Systemadministratoren und Security Engineers mit den Architekturen erst recht an ihre Grenzen kommen, falls sie überhaupt folgen können. Wer glaubt Microsoft Office in Verbindung mit VBA sei ein Sicherheitsalbtraum, hat Jupyter Notebook noch nicht gesehen. Das Ding lässt sich mit mittlerweile mehr als 150 wrapper kernels (3) mit je eigenen Sicherheitsaspekten verquicken.
(1)
Cloud-Datenbank-GAU: Microsoft informiert Azure-Kunden über gravierende Lücke
Update 28.08.2021 15:53 Uhr
https://www.heise.de/news/Cloud-Datenbank-GAU-Microsoft-informiert-Azure-Kunden-ueber-gravierende-Luecke-6176601.html
"Den Angriffsvektor eröffnete eine von Microsoft im Jahr 2019 freigegebene Funktion Jupyter Notebook, …"
(2)
5 reasons why jupyter notebooks suck
Alexander Mueller – Mar 24, 2018
https://towardsdatascience.com/5-reasons-why-jupyter-notebooks-suck-4dc201e27086
(3)
Jupyter kernels
https://github.com/jupyter/jupyter/wiki/Jupyter-kernels
Den Jupyter Notebook-Vorfall kann man auch hier im Blog nachlesen.
Azure: Tausende Kunden von ChaosDB-Schwachstelle in Azure Cosmos DB bedroht
Ab und zu wäre es gut, such auch zu informieren bevor man was schreibt.
Jupiter Notebooks sind ja wie eine offene Shell. Natürlich kann man damit viel machen.. das ist aber so gewollt, wie bei einer Shell.
LOL, Sie sollten sich als Sicherheitsingenieur bewerben.
Tip: https://www.schneier.com/news/archives/2012/12/complexity_the_worst.html