Definition

Eine Sandbox ist eine isolierte virtuelle Maschine, in der potenziell unsicherer Softwarecode ausgeführt werden kann, ohne dass er Schaden anrichten kann. Er beeinträchtigt damit weder Netzwerkressourcen noch lokale Anwendungen.

Cybersecurity-Forscher nutzen die Sandbox (Englisch für „Sandkasten“), um verdächtigen Code aus unbekannten Anhängen und URLs auszuführen und sein Verhalten zu beobachten. Wenn Sie sehen, dass sich ein Code sich selbst repliziert, einen Command-and-Control-Server kontaktieren will, zusätzliche Software herunterlädt oder sensible Daten verschlüsselt, ist das ein Warnsignal, dass es sich um Schadsoftware handelt.

Da es sich bei der Sandbox um eine emulierte Umgebung ohne Zugriff auf das Netzwerk, Daten oder andere Anwendungen handelt, können Sicherheitsteams den Code gefahrlos „zünden“, um festzustellen, wie er funktioniert und ob er bösartig ist.

Auch jenseits von Cybersicherheit verwenden Entwickler manchmal Sandbox-Testumgebungen, um einen Code vor seinem breiten Einsatz zu testen.

Cybersicherheits-schulungen beginnen hier

So können Sie Ihre kostenlose Testversion nutzen:

  • Vereinbaren Sie einen Termin mit unseren Cybersicherheitsexperten, bei dem wir Ihre Umgebung bewerten und Ihre Sicherheitsrisiken identifizieren.
  • Wir implementieren unsere Lösung innerhalb von lediglich 24 Stunden und mit minimalem Konfigurationsaufwand. Anschließend können Sie unsere Lösungen für 30 Tage testen.
  • Lernen Sie unsere Technologie in Aktion kennen!
  • Sie erhalten einen Bericht zu Ihren Sicherheitsschwachstellen, sodass Sie sofort Maßnahmen gegen Cybersicherheitsrisiken ergreifen können.

Füllen Sie dieses Formular aus, um einen Termin mit unseren Cybersicherheitsexperten zu vereinbaren.

Vielen Dank

Wir werden Sie zeitnah zur Abstimmung der nächsten Schritte kontaktieren.

Wozu dient eine Sandbox?

In Standard-Produktionsumgebungen von Unternehmen könnte so eine Sandbox missverstanden oder gar als unnötige Ausgabe betrachtet werden. Aber Sandboxen sind für verschiedene Szenarien in Entwicklung, Cybersicherheit und Forschung unerlässlich. Dabei ist ist es in der Cybersicherheitsforschung viel wichtiger, dass die Sandbox wirklich isoliert und sicher ist, als in der Softwareentwicklung, da Cybersicherheitsexperten in der Sandbox z. B. Malware testen, die im Netzwerk aktiv und aggressiv nach ausnutzbaren Schwachstellen scannt und deshalb die Sandbox nicht verlassen darf.

Einsatz in der Softwareentwicklung

In der Softwareentwicklung besteht eine Sandbox normalerweise aus einem Entwicklungsserver und einem Bereitstellungsserver (Staging Server). Der Entwicklungsserver ist von der Produktionsumgebung getrennt, braucht aber dennoch manchmal einen einfachen Netzwerkzugang. Entwickler verwenden diesen Server jedes Mal, wenn sich die Codebasis ändert, um Code hochzuladen und zu testen.

Der Bereitstellungsserver ist so konzipiert, dass er eine exakte Nachbildung der Produktionsumgebung ist. Auf diesem Server testet die Qualitätssicherung (QA) den Code, bevor er in der Produktion eingesetzt wird. Da die Bereitstellungsumgebung mit der Produktionsumgebung identisch ist, sollte Code, der in der Bereitstellungsumgebung ohne Probleme läuft, auch in der Produktionsumgebung ohne Probleme laufen. Nachdem der Code getestet wurde, wird er in der Produktion eingesetzt.

Einsatz in der Cybersecurity-Forschung

Cybersecurity-Forscher und -Analysten nutzen ihre Sandbox-Umgebung auf ähnliche Weise. Aber in diesem Fall ist es viel wichtiger, sicherzustellen, dass Malware nicht auf Netzwerkressourcen zugreifen kann. Die Sandbox-Umgebung hat deshalb ein eigenes Netzwerk und oft keine physische Verbindung zu den Produktionsressourcen.

Der Zweck der Sandbox ist es, bösartigen Code auszuführen und diesen zu analysieren. Unter Umständen könnte es sich bei diesem Code um einen Zero-Day-Exploit handeln, bei dem die Wirkung und die Nutzlast der Malware unbekannt sind. Deshalb darf die Sandbox keinen Zugriff auf kritische Infrastrukturen haben.

Mit einer Sandbox können Cybersecurity-Forscher und -Analysten die Funktionsweise von Malware verstehen und herausfinden, was man dagegen tun kann. Das ist der erste Schritt bei der Entwicklung von Antiviren-Software, um die Ausbreitung von Malware auf andere Systeme zu verhindern und sie von bereits infizierten Systemen zu entfernen.

Weitere Ziele sind:

  • Netzwerkschutz: Sandboxen sind oft in Netzwerkschutz-Tools integriert. E-Mails, Downloads und andere eingehende Dateien können automatisch durch die Sandbox geleitet werden, um sie auf bösartiges Verhalten zu prüfen, bevor sie den Endnutzer erreichen.
  • Forensische Analyse: Nach einem Cybervorfall nutzen Cybersicherheitsexperten Sandboxen, um Tiefe und Auswirkungen des Angriffs zu verstehen. Dadurch können sie bösartige Payloads analysieren, um deren Ursprung, Verhalten und potenzielle Ausbreitung zu verstehen. Dieses Wissen unterstützt Incident Response und Recovery.
  • Anwendungskompatibilität: Organisationen, die auf neue Systeme oder Plattformen migrieren, können mit einer Sandbox die Leistung älterer Anwendungen oder Daten testen und so sicherstellen, dass keine Kompatibilitätsprobleme auftreten.
  • Einhaltung von Vorschriften und Richtlinien: In bestimmten Branchen gelten strenge Vorschriften für Datensicherheit, -integrität und -zugriff. Sandboxen helfen bei der Validierung und Sicherstellung, dass Software und Prozesse diesen Vorschriften entsprechen, ohne dass das Risiko von Datenschutzverletzungen besteht.
  • Lernen und Experimentieren: Forschungseinrichtungen und Einzelpersonen, die sich mit Cybersicherheit befassen, nutzen Sandkästen häufig als Übungsgelände. Sandboxing bietet Studierenden eine sichere Umgebung, in der sie Cyberangriffstechniken, Schwachstellen und Abwehrmechanismen verstehen können, ohne dass Risiken für tatsächliche Systeme entstehen.

Für komplexe Angriffe dienen Sandbox-Umgebungen dazu, Malware schnell zu analysieren und zu stoppen, bevor sie zu einem globalen Problem wird. Ransomware zum Beispiel kann sich global ausbreiten und kritische Regierungssysteme zum Absturz bringen. Deshalb ist es wichtig, dass Forscher über einsatzbereite Sandboxen verfügen, um dies zu verhindern.

Wie funktioniert eine Sandbox?

Die genaue Funktionsweise einer Sandbox hängt davon ab, was getestet werden soll. So ist eine Sandbox-Umgebung zum Testen von Malware anders aufgebaut und funktioniert anders als eine Sandbox, die zum Testen von Code für Anwendungsupdates gedacht ist. Für die Erforschung von potenzieller Malware und die Ausführung von bösartigem Code muss eine Sandbox von der Produktionssoftware isoliert werden.

Unabhängig davon, wie eine Sandbox verwendet wird, hat jede Umgebung ein paar grundlegende Eigenschaften:

  • Emulation eines physischen Geräts: Dies kann die Emulation eines Desktop- oder Mobilgeräts sein. In beiden Fällen muss die zu testende Anwendung Zugriff auf die gleichen Ressourcen wie der zu analysierende Code haben, einschließlich CPU, Arbeits- und Massenspeicher.
  • Emulation des Zielbetriebssystems: Bei Verwendung einer virtuellen Maschine muss die Anwendung Zugriff auf das Betriebssystem haben. Bei einer virtuellen Maschine ist die Sandbox von der zugrunde liegenden physischen Hardware isoliert, hat aber Zugriff auf das installierte Betriebssystem.
  • Virtualisierte Umgebung: Normalerweise befindet sich eine Sandbox auf einer virtuellen Maschine, sodass sie keinen Zugriff auf physische Ressourcen hat, aber auf virtualisierte Hardware zugreifen kann.
  • Detailliertes Monitoring: Alle Aktivitäten und Interaktionen werden aufgezeichnet, wenn Tester Software in der Sandbox ausführen. Dazu gehören Dateisystemänderungen, Netzwerkkommunikation und Systemaufrufe. Dadurch können Tester einen Einblick in das wahres Verhalten der Software erhalten.
  • Erkennen von Malware, die Techniken anwendet, um nicht entdeckt zu werden: Einige fortgeschrittene Malware-Programme erkennen, wenn sie sich in einer Sandbox befinden, und ändern ihr Verhalten entsprechend. Eine solche Malware sucht möglicherweise nach Anzeichen virtueller Umgebungen oder ungewöhnlicher Nutzerinteraktionen, um unentdeckt zu bleiben. Wenn die Malware feststellt, dass sie sich in einer Sandbox befindet, ruht sie möglicherweise und offenbart ihre wahre Natur erst in einer realen Umgebung. Forscher optimieren Sandboxing-Umgebungen deshalb kontinuierlich, um diesen Ausweichmanövern entgegenzuwirken.
  • Potenzielle Exploits: Malware-Autoren erstellen manchmal Exploits, die auf Schwachstellen in schlecht gesicherten Sandboxen abzielen. Dies unterstreicht die Notwendigkeit eines robusten Sandbox-Designs und regelmäßiger Updates.
  • Eingeschränkter Zugriff: In vielen Szenarien beschränken Sandboxen den Netzwerkzugriff und stellen so sicher, dass die Software nicht frei mit externen Servern oder Systemen kommunizieren kann. Darüber hinaus verhindern Sandboxen durch die Kontrolle der Dateisystem-Namespaces unbefugte Dateiänderungen oder -zugriffe. Bei Cloud-Hosts und bestimmten Anwendungen haben Sandboxen üblicherweise ebenfalls nur eingeschränkten Zugriff, um sicherzustellen, dass die enthaltene Software den Host-Rechner nicht verletzen oder gefährden kann.

Vorteile einer Sandbox

Sandboxing bietet eine Vielzahl von Vorteilen, vom Schutz von Daten bis hin zur Förderung effizienter Softwaretests. Zu den bemerkenswertesten Vorteilen der Verwendung einer Sandbox-Umgebung gehören:

  • Verbesserte Sicherheit: Im Kern bietet eine Sandbox eine verbesserte Sicherheitsebene. Durch das Einschließen potenziell schädlicher Software in einer kontrollierten Umgebung stellt Sandboxing sicher, dass umfassendere Systeme und kritische Daten unberührt bleiben.
  • Sicheres Testgelände: Sandboxen dienen als Entwicklungstestumgebung und ermöglichen es Unternehmen, Anwendungen in einem sicheren Bereich auszuführen, bevor sie in die Produktionsphase eingeführt werden. Dieser sichere Raum stellt sicher, dass alle potenziellen Probleme angegangen werden, ohne kritische Ressourcen zu gefährden oder zu verlangsamen.
  • E-Mail-Quarantäne: Sandboxen werden häufig als Quarantänezone für verdächtige E-Mails und deren Anhänge verwendet. E-Mail-Filter können potenzielle Bedrohungen zwar kennzeichnen, Administratoren benötigen jedoch einen sicheren Ort, um diese zu überprüfen, ohne das Risiko einzugehen, sie aus Versehen zu aktivieren. In einer Sandbox können bösartige Anhänge oder Makros, insbesondere solche, die auf Apps wie Microsoft Office abzielen, auf ihre Sicherheit überprüft werden.
  • Proaktive Bedrohungsanalyse: Sandboxen ermöglichen eine proaktive Bedrohungsbewertung und eine proaktive Einsicht in mögliche Bedrohungen und stellen damit sicher, dass Unternehmen potenzielle Risiken erkennen und bekämpfen können, bevor sie in die tatsächlichen Systeme eindringen.
  • Erleichtert das Testen von Software: Sandboxing dient nicht nur als Schutzschild gegen Bedrohungen, sondern ist auch für Entwickler von unschätzbarem Wert. Sie können neuen Code, Updates oder ganze Anwendungen testen, um Probleme zu identifizieren und zu beheben, ohne die Live-Umgebung zu beeinträchtigen.
  • Benutzerfreundlich für Mitarbeiter: Während Sandboxen für spezialisiertes Cybersicherheitspersonal unschätzbar wertvolle Tools sind, stellt ihr intuitives Design sicher, dass auch Mitarbeiter ohne technischen Hintergrund sie nutzen können. Durch die Isolierung und Untersuchung verdächtiger Programme können alle unbekannten Code ausführen, ohne die Primärsysteme zu gefährden.
  • Kosteneffizienz: Die Eindämmung von Sicherheitsverletzungen oder die Behebung von Softwareproblemen nach der Bereitstellung kann kostspielig sein. Sandboxing bietet einen präventiven Ansatz, der alle finanziellen und Reputationsschäden mindert, die Unternehmen andernfalls möglicherweise erleiden würden.
  • Kontinuierliches Lernen und Anpassung: Die Sandbox-Umgebung bietet eine kontinuierliche Feedbackschleife. Wenn sie auf Bedrohungen und auffälliges Softwareverhalten stößt, hilft sie dabei, Sicherheitsprotokolle nach Bedarf zu aktualisieren.

Kurz gesagt ermöglicht Sandboxing Unternehmen, eine optimale Softwareleistung sicherzustellen und gleichzeitig für eine robuste Sicherheit und kontinuierliche Innovation zu sorgen.

Sandbox-Beispiele

Eine Sandbox kann sowohl Software- als auch Hardwarekomponenten beinhalten. Sie könnte sich mit Hardware-Einschränkungen in einem eigenen isolierten Netzwerk befinden. Für eine besonders enge Isolierung könnte die Sandbox einen eigenen Wi-Fi-Router und eine eigene ISP-Verbindung haben. Diese Einrichtung würde es einer bösartigen Anwendung physisch unmöglich machen, auf das Hauptnetzwerk zuzugreifen.

Mehrere Anwendungen verwenden standardmäßig Sandboxen, um das lokale Betriebssystem zu schützen. Browser haben ihre eigenen Sandboxen, um bösartige Anwendungen, die im Web laufen, vom Zugriff auf lokale Rechnerressourcen zu separieren. Sprachen, wie Java, verfügen über eine eigene Sandbox, um lokale Ressourcen vor nicht vertrauenswürdigem Code zu schützen, wie z. B. ein Java-Applet, das auf einer Webseite läuft.

Das Betriebssystem Windows 10 verfügt über eine eingebaute Sandbox, um den Desktop vor nicht vertrauenswürdigem Code zu schützen. Obwohl diese Funktion nicht als Ersatz für Antiviren-, Firewall- und Anti-Malware-Programme verwendet werden sollte, fügt sie eine Sicherheitsebene hinzu, die ältere Windows-Betriebssysteme nicht haben.

HTML5 verfügt über eine Sandbox, um den Missbrauch seiner iframe-Funktion zu schützen. Und das Linux-Betriebssystem verfügt über mehrere Anwendungs-Sandboxen, die auf Seccomp und cgroup aufbauen. Die Google-Sandbox-API steht für Entwickler zur Verfügung, die C++-Code schreiben und ihren Code in einer Sandbox unterbringen müssen, bevor sie ihn in der Produktionsumgebung bereitstellen.

Cloudbasierte Sandboxen sind virtuelle Umgebungen, die in der Cloud gehostet werden. Sie ermöglichen die sichere Ausführung und Analyse von Code und bieten Skalierbarkeit und Flexibilität, da mehrere Sandbox-Instanzen gleichzeitig ausgeführt werden können.

Entwicklungsumgebungen sind üblicherweise als Sandbox aufgebaut. Plattformen wie Docker und Kubernetes nutzen Containerisierung, eine Art Light-Sandboxing, das es Entwicklern ermöglicht, eine Anwendung mit all ihren Abhängigkeiten in einen „Container“ zu packen. Dadurch wird sichergestellt, dass die Anwendung in verschiedenen Umgebungen konsistent ausgeführt wird.

Wie richtet man eine Sandbox-Umgebung ein?

Wie Sie eine Sandbox einrichten, hängt von ihrem Verwendungszweck ab. Viele Cloud-Plattformen haben ihre eigene Sandbox, um mit neuen Programmen und Updates zu arbeiten. Entscheiden Sie sich beispielsweise für die Zusammenarbeit mit PayPal als Zahlungsabwickler, verfügt die Plattform über ihre eigene vollständige Sandbox, in der Sie die Produktionsumgebung emulieren können. Jeglicher Code in der Sandbox ist von der Produktion isoliert, sodass Fehler und Bugs die eigentliche Plattform nicht beeinträchtigen.

Wenn Sie eine Computer-Sandbox zum Testen von Code oder potenzieller Malware benötigen, können Sie Ihre eigene Sandbox erstellen, indem Sie eine virtuelle Maschine installieren. VirtualBox, auch virtuelle Maschine genannt, ist häufig das Tool der Wahl, um eine virtuelle Umgebung zu hosten. Sie benötigen dann lediglich eine Installationsdatei, um das Betriebssystem innerhalb der virtuellen Maschine auszuführen.

Legen Sie dabei vor der Installation des Betriebssystems innerhalb der virtuellen Maschine die Hardwareressourcen fest, die der Umgebung zur Verfügung stehen sollen, wie Arbeitsspeicher, CPU, Speicherkapazität und Netzwerkadapter. Diese Ressourcen werden virtualisiert und sind außerhalb der virtuellen Maschine nicht verfügbar. Umgekehrt können Programme, die in Ihrer neuen Umgebung ausgeführt werden, keine Speicherressourcen mit dem Hauptbetriebssystem oder irgendetwas außerhalb der virtuellen Maschine teilen.

Auch wenn eine Sandbox ein vermeintlich sicherer Raum ist, versuchen Angreifer immer wieder, die Sandbox-Sicherheit zu durchbrechen. Technologiefirmen setzen oft ein hohes Preisgeld für jeden aus, der eine ausnutzbare Schwachstelle in ihrer Sandbox findet. Die Entwickler von Microsoft Edge zahlen beispielsweise bis zu 30.000 US-Dollar an jeden, der eine Umgehung der browsereigenen Sandbox findet. Google-Chrome-Entwickler zahlten 2012 60.000 US-Dollar an jemanden, der auf einem vollständig gepatchten Rechner unzulässigen Code ausführen konnte.

Um Sicherheitsforschung zu betreiben oder in die Malware-Analyse einzusteigen, ist eine Sandbox ein Muss. Sie stellt sicher, dass der virtuellen Maschine nicht alle Ressourcen zur Verfügung stehen, einschließlich des Netzwerkspeichers. Mit einer Sandbox können Sie den Code analysieren, ohne das Risiko einzugehen, eine Produktionsumgebung zu zerstören.

Wie Proofpoint Sie unterstützen kann

Die Targeted-Attack-Protection (TAP) von Proofpoint nutzt Sandboxing als Teil ihres Cybersicherheitsansatzes. Die Sandboxing-Funktion in TAP ermöglicht die Untersuchung und Analyse einer Vielzahl von Angriffen, einschließlich Angriffen mit schädlichen Anhängen und URLs, die Malware installieren oder Nutzer dazu verleiten können, vertrauliche Informationen weiterzugeben.

Durch die Nutzung von Sandboxing schafft TAP eine sichere und isolierte Umgebung, in der potenziell schädliche Programme oder unsicherer Code ausgeführt und beobachtet werden können, ohne Hostgeräte oder Betriebssysteme zu gefährden. Dies ermöglicht die proaktive Erkennung und Abwehr komplexer Bedrohungen durch die Analyse des Codeverhaltens und der Ausgabeaktivität innerhalb der Sandbox.

Die TAP-Lösung von Proofpoint nutzt Sandboxing als Teil ihrer umfassenden Zero-Day-Schutzfunktion, die verhindert, dass potenzielle Bedrohungen in das Netzwerk eindringen und Schaden anrichten. Diese Funktion spielt eine entscheidende Rolle bei der proaktiven Erkennung und Beseitigung von Bedrohungen und verbessert die Sicherheitslage Ihres Unternehmens.

Zusätzlich zu Sandboxing umfasst die TAP-Lösung von Proofpoint weitere Sicherheitsmaßnahmen wie Scannen, Filtern und prädiktive Analysen, um komplexe Bedrohungen zu identifizieren und abzuwehren. Die Lösung ist ein umfassendes Informationssicherheitsprogramm, das an Industriestandards ausgerichtet ist, einschließlich der Verschlüsselung von Daten während der Übertragung und im Ruhezustand, Zugriffskontrollmechanismen und Schwachstellenmanagement.

Wenn Sie mehr erfahren möchten, wenden Sie sich direkt an Proofpoint.