Was ist Remotecodeausführung?
Eine Remotecodeausführung (Remote Code Execution oder kurz RCE) ist ein Angriff, bei dem ein Angreifer Schadcode auf den Computern oder im Netzwerk eines Unternehmens ausführen kann. Die Fähigkeit, angreiferkontrollierten Code auszuführen, kann für verschiedene Zwecke genutzt werden, z. B. um zusätzliche Malware zu installieren oder sensible Daten zu stehlen.
Wie Angriffe mit Remotecodeausführung (RCE) funktionieren
Angriffe mit Remotecodeausführung erfolgen in der Regel über Sicherheitslücken in Webanwendungen und der Netzwerkinfrastruktur.
RCE-Sicherheitslücken sind Schwachstellen in Software, die es einem Angreifer ermöglichen, Schadcode auf einem Zielsystem auszuführen. Mehrere Arten von Sicherheitslücken können für die RCE genutzt werden, darunter die folgenden Beispiele:
- Sicherheitslücken durch Injektion: Eine Sicherheitslücke, wie z. B. SQL-Injection oder Command Injection, wird durch eine mangelhafte Bereinigung von Eingaben ermöglicht. Wenn ein Nutzer eine sorgfältig erstellte, böswillige Eingabe macht, werden einige der von ihm bereitgestellten Daten als auszuführende Befehle interpretiert. Dadurch kann der Angreifer das verwundbare System dazu zwingen, vom Angreifer bereitgestellten Code auszuführen.
- Unsichere Deserialisierung: Die Serialisierung vereinfacht die Übertragung von Datenmengen, indem sie in eine einzige Bitfolge gepackt wird, die vom Empfängersystem entpackt werden muss. Wenn die Struktur der serialisierten Daten jedoch nicht genau definiert ist, kann ein Angreifer eine Eingabe erstellen, die beim Auspacken falsch interpretiert wird. Je nachdem, wie die Daten gespeichert und verarbeitet werden, kann diese Fehlinterpretation dem Angreifer die Ausführung von Code ermöglichen.
- Schreiben außerhalb des zulässigen Bereichs: Ein Puffer ist ein Arbeitsspeicher fester Größe, der zum Speichern von Daten zugewiesen wird. Unsichere Lese- oder Schreibvorgänge könnten es einem Angreifer ermöglichen, Daten dort zu platzieren, wo sie als Code oder als wichtige Kontrollflussinformationen für die Anwendung interpretiert werden.
- Dateiverwaltung: Einige Anwendungen ermöglichen es Nutzern, Dateien auf einen Server hochzuladen. Der dadurch ermöglichte Zugriff könnte es einem Angreifer erlauben, eine Datei mit böswilligem Schadcode hochzuladen und die Anwendung dazu zu bringen, diesen auszuführen.
Malware ist vom Angreifer bereitgestellter Code, der auf einem Zielsystem ausgeführt werden soll. Eine RCE-Sicherheitslücke ermöglicht es einem Angreifer einfach, Malware auf unterschiedliche Weise einzusetzen.
Daher lassen sich mit RCE-Sicherheitslücken viele der gleichen Ziele erreichen wie mit herkömmlicher Malware. RCE kann verwendet werden, um Malware auf einem anfälligen System zu installieren, einen Denial-of-Service-Angriff (DoS) durchzuführen oder auf sensible Informationen zuzugreifen, die auf einem System gespeichert sind.
Wie Angreifer RCE nutzen können
Remotecodeausführung ist gefährlich, weil die Möglichkeit, Schadcode auszuführen, viele Türen für einen Angreifer öffnet. Einige der Möglichkeiten, wie RCE-Sicherheitslücken für gängige Angriffe genutzt werden können, sind die folgenden:
- Fernzugriff: RCE-Sicherheitslücken werden häufig genutzt, um einem Angreifer einen ersten Zugang zu einem Unternehmensnetzwerk zu verschaffen. Diesen Zugang könnte er dann ausweiten. Eine RCE-Sicherheitslücke könnte es einem Angreifer beispielsweise ermöglichen, Anmeldedaten zu stehlen, die ihm den Netzwerkzugriff über ein VPN erlauben würden.
- Einsatz von Malware: Auch wenn RCE-Sicherheitslücken die Ausführung von Code zulassen, kann dieser Code in seinem Umfang begrenzt sein. Um diese Einschränkung zu umgehen, können Angreifer RCE nutzen, um andere, destruktivere Malware herunterzuladen und auszuführen. So könnte RCE dazu verwendet werden, Ransomware auf ein verwundbares System herunterzuladen und auszuführen.
- Datendiebstahl: RCE-Sicherheitslücken könnten es einem Angreifer erlauben, Befehle innerhalb einer verwundbaren Anwendung auszuführen. So würde er Zugriff auf das Dateisystem, Datenbanken und andere Speicher sensibler Unternehmens- und Kundendaten erhalten.
- Zerstörung von Daten: RCE-Sicherheitslücken könnten es einem Angreifer ermöglichen, DROP-Befehle innerhalb einer Datenbank oder Code innerhalb des Systemterminals auszuführen. Dieser Zugriff bietet die gleichen Möglichkeiten zum Löschen von Dateien, die auch ein legitimer Nutzer hätte.
- DoS-Angriffe: Durch Sicherheitslücken beim Schreiben außerhalb der Grenzen kann ein Angreifer, kritischen Code überschreiben und eine Anwendung zum Absturz bringen. Andere RCE Sicherheitslücken könnten das Beenden von Prozessen oder das Löschen wichtiger Daten ermöglichen.
Wie Sie Remotecodeausführung verhindern
Angriffe mit Remotecodeausführung werden durch Sicherheitslücken in Webanwendungen von Unternehmen ermöglicht. Einige der Methoden, die Unternehmen anwenden können, um ihre Anfälligkeit für RCE-Angriffe zu verringern, sind die folgenden:
- Scannen auf Sicherheitslücken: Eine Kombination aus statischer Codeanalyse – zur Identifizierung bekannter Sicherheitslücken – und dynamischer Analyse wie Fuzzing kann Entwicklern helfen, RCE-Sicherheitslücken zu identifizieren und zu beheben, bevor sie ausgenutzt werden können.
- Updates und Patches: RCE-Sicherheitslücken können in einer Anwendung oder den Bibliotheken von Drittanbietern, von denen sie abhängt, entdeckt werden. Die sofortige Anwendung von Updates und Patches verringert das Zeitfenster, in dem Sicherheitslücken ausgenutzt werden können.
- Eingabevalidierung: Die meisten RCE-Sicherheitslücken sind auf eine mangelhafte Eingabevalidierung zurückzuführen, bei der eine Anwendung Annahmen über die vom Nutzer eingegebenen Daten macht. Eine robuste Eingabeüberprüfung kann die Bedrohung durch die meisten RCE-Sicherheitslücken beseitigen.
- Netzwerküberwachung: Versuchte RCE-Exploits können von einer WAAP-Lösung (Web Application and API Protection) erkannt und blockiert werden. Die Bereitstellung von Netzwerksicherheitslösungen vor Webanwendungen kann die potenziellen Risiken ungepatchter Sicherheitslücken verringern.
Schützen Sie sich mit Cloudflare One vor RCE
Mit der zunehmenden Verlagerung von Webanwendungen auf cloudbasiertes Hosting wird es immer schwieriger, sie vor Missbrauch zu schützen. Die Cloudflare Web Application Firewall nutzt eine Vielzahl von globalen Bedrohungsdaten, um Versuche der Remotecodeausführung zu blockieren.
Darüber hinaus bietet Cloudflare One, die Secure Access Service Edge-Plattform (SASE) von Cloudflare, robuste Sicherheit und Überwachung für interne Unternehmensanwendungen.