Cyberbedrohungen
Bedrohungen und Risiken für Linux-Umgebungen, Teil 1
Cyberkriminelle richten ihre Aufmerksamkeit und Ressourcen auf Linux-Zielumgebungen mit ihren entsprechenden Schwachpunkten. Welches sind die größten Risiken für diese Plattformen?
Originalartikel von Magno Logan, Pawan Kinger
Linux ist heute eines der mächtigsten Betriebssysteme, das auf Cloud-Plattformen und Servern weltweit vorherrschend ist. Tatsächlich hat die Nutzung von Linux die von Windows auf Azure, Microsofts eigener Cloud-Plattform, inzwischen übertroffen. Dem 2017 State of Linux Kernel Development Report der Linux Foundation zufolge liefen 90% der öffentlichen Cloud Workloads unter Linux und neun der zehn Top- Public Cloud Provider setzen auf dieses Betriebssystem. Darüber hinaus sind 82% der Smartphones weltweit damit ausgestattet. Linux hat einen gigantischen Marktanteil von 99% bei Supercomputern. Doch wie jede andere Software ist auch Linux nicht frei von sicherheitsrelevanten Bedrohungen und Risiken. Daher nimmt es nicht wunder, dass Cyberkriminelle ihre Aufmerksamkeit und ihre Ressourcen auf Linux-Zielumgebungen mit ihren entsprechenden Schwachpunkten richten. Welches sind die größten Risiken für diese Plattformen?
Eine der häufigsten Methoden, mit denen sich Cyberkriminelle einen ersten Zugang zu einer Linux-Umgebung verschaffen, ist die Ausnutzung einer Sicherheitslücke in einem öffentlich gehosteten Service. Der Mangel an Verfahren zur Verwaltung und Nachverfolgung von Schwachstellen sowie das Fehlen angemessener System-Patching-Prozesse kann zu hohen Risiken für die Systeme führen, wenn Kriminelle eine Schwachstelle finden und ein Exploit veröffentlicht wird. Derzeit dauert es nur ein paar Tage, manchmal sogar nur Stunden, bis ein Exploit für eine Sicherheitslücke bereit steht. Dieses Problem ist bei Linux noch kritischer, da der meiste Code Open-Source ist und die Zeit und die Fähigkeiten, die zum Reverse-Engineering eines Patches erforderlich sind, kürzer als je zuvor sind.
Tausende Schwachstellen in verschiedenen Linux-Distributionen
Es ist wichtig, nicht nur die Schwachstellen in der Plattform selbst zu berücksichtigen, sondern auch die Bedrohung durch das, was auf der Plattform ausgeführt wird, da sich Ausnutzung und Gefährdung voneinander unterscheiden. Die bloße Anzahl von Schwachstellen in einem Service oder einer Plattform aber bedeutet nicht unbedingt, dass diese Schwachstellen automatisch ein erhebliches Risiko für diese Systeme darstellen.
Um einen besseren Eindruck vom Umfang der Schwachstellen in den verschiedenen Linux-Distributionen zu bekommen, analysierten die Sicherheitsforscher die CVE-Daten (Common Vulnerabilities and Exposures) von Red Hat, Ubuntu, Debian, Oracle Linux und SUSE. Die Diagramme zeigen die Anzahl der Sicherheitshinweise, die von jedem Hersteller für seine jeweilige Linux-Distribution herausgegeben wurden.
Jeder Anbieter einer Linux-Distribution folgt einer unterschiedlichen Schwachstellen-Managementprozedur. Patches von Anbietern kommen zu unterschiedlichen Zeiten, während Upstream-Patches – ob Originalpaket oder aus einer Utility-Quelle – als erstes erscheinen. Linux-Anbieter sind für das Patchen von Schwachstellen in Komponenten wie dem Kernel, Stock Utilities und Paketen verantwortlich. 2019 behob Red Hat laut seinem Product Security Risk Report über 1.000 CVEs in seiner Distribution Red Hat Enterprise Linux (RHEL). Das sind mehr als 70 % der insgesamt behobenen Schwachstellen in allen Produkten des Unternehmens.
Linux –Schwachstellen können zu Remote Code Execution, Datendiebstahl und anderen Sicherheitsvorfällen führen
Schwachstellen im Anwendungs-Stack
Einige frühere Datendiebstähle konnten aufgrund von Schwachstellen im Anwendungs-Stack durchgeführt werden. So zum Beispiel der berüchtigte Vorfall bei Equifax, der über den Missbrauch einer Sicherheitslücke in Apache Struts (CVE-2017-5638) möglich wurde. Das MITRE ATT&CK Framework führt die „Exploit Public-Facing Application“ for ID T1190 auf, ein verbreiteter Eintrittspunkt für Angreifer, der es ihnen erlaubt, Fehler in aufs Internet gerichtete Workflows auszunutzen. Einige der bekanntesten Schwachstellen dieser Kategorie sind in der Liste Open Web Application Security Project (OWASP) Top 10 und in Common Weakness Enumeration and SysAdmin, Audit, Network, and Security (CWE/SANS) Top 25 Most Dangerous Software Errors aufgeführt – beides Standardreferenzen für Entwickler und Webanwendungs-Sicherheitsprofis. Diese Dokumente sind sich über die wichtigsten Sicherheitsrisiken für Web-Applikationen einig, darunter Schwachstellen wie SQL Injection, Cross-Site Scripting (XSS), XML External Entities (XXEs) und unsichere Deserialisierung. Vor allem Web-Applikationen sind der Ausgangspunkt für viele dieser Angriffe, da sie am meisten gefährdet und in der Regel sehr anfällig sind.
Fehlkonfigurationen, Sicherheitslücken in der Cloud
Fehlkonfigurationen kommen ziemlich häufig vor und stellen immer ein kritisches Sicherheitsproblem dar. Die erste Version der OWASP Top 10 Web Risks 2004 enthielt das, was damals als „Insecure Configuration Management“ bezeichnet und später in der Liste von 2017 in „Security Misconfiguration“ geändert wurde. Im CWE-System wird von CWE-16 oder Configuration gesprochen, also von „Schwachpunkten, die typischerweise während der Konfiguration der Software entstehen“.
Mit dem Wechsel der Unternehmen in die Cloud wurden Fehlkonfigurationen zu einem noch größeren Problem, denn anscheinend brachten die Unternehmen häufig unbeabsichtigt solche Fehler in die neuen Umgebungen.
Die folgenden Fehlkonfigurationen und Sicherheitslücken kommen in Linux-Umgebungen am häufigsten vor:
Default oder schwache Passwörter — oder gar keine:
Ein einziges schwaches Passwort kann Cyberkriminellen genügen, um sich Zugang zu Systemen zu verschaffen. Vor allem für kritische administrative oder Service-Konten sollten eher Schlüssel und Zertifikate als gesetzte Passwörter gewählt werden. Im November 2020 gab das FBI einen Sicherheits-Alert heraus, weil Cyberkriminelle fehlkonfigurierte Instanzen von SonarQube (quelloffenes automatisches Code Review Tool) missbrauchten, um von Regierungsbehörden und Privatunternehmen Quellcode herunterzuladen. Dem FBI zufolge exponierten Organisationen diese Systeme dem Internet, die mit der Standard-Installationskonfiguration (Port 9000) und den Default-Admin-Zugangsdaten betrieben wurden.
Auch Verbrauchergeräte sind anfällig für Fehlkonfigurationen, etwa IoT-Geräte, einschließlich Router, IP-Kameras und Video Recorder, die ohne oder nur mit dem Standardpasswort eingesetzt werden.
Exponierte Services im Internet (auch offene Ports):
Eine der schwerwiegendsten, aber oft übersehenen Fehlkonfigurationen betrifft im Internet exponierte Dienste, die nur für lokale oder benachbarte Netzwerke zugänglich sein sollen. Darüber hinaus ist zu beachten, dass sich nicht alle Angriffe durch irgendeine Form von „Rauschen“ manifestieren. Vielmehr kann ein Angreifer einfach eine Hintertür installieren oder eine Aktivität auf dem kompromittierten Host ausführen, die wenig rechenintensiv ist, und damit seine Entdeckung erschweren. Werden Dienste und Systeme möglichst ohne direkten Zugang zum öffentlichen Internet betrieben, so reduziert dies die Angriffsfläche.
Ein Beispiel für im Internet fahrlässig exponierte Services sind die von den Sicherheitsforschern von Trend Micro weltweit gefundenen 8.000 Redis-Instanzen, die ohne TLS-Verschlüsselung und Passwörtern betrieben und für Kryptowährungs-Mining missbraucht wurden.
Als Teil der Sicherheitsprüfung müssen offene Ports oder Sicherheitsgruppen regelmäßig überwacht werden. Bedrohungs- und Risikobewertungen sind hilfreich, werden aber nicht regelmäßig durchgeführt. Daher empfiehlt es sich, Online-Dienste (wie Shodan Monitor) zu nutzen, die Infrastrukturen regelmäßig überwachen und Geräte und Systeme mit Internetanschluss anzeigen können. Häufig führt die so genannte Schatten-IT oder die Nutzung ungesicherter Dienste und Geräte ohne das Wissen der Sicherheits- oder IT-Gruppen zu exponierten Diensten.
Offene Dateifreigaben
Obwohl dies nicht so häufig vorkommt wie das Exponieren von Diensten im Internet, können öffentlich zugängliche Freigaben eine Fülle von Informationen in Gefahr bringen. FTP-, SMB- und NFS-Freigaben, Verzeichniseinträge auf Webservern sowie offene Cloud-Speicherdienste wie Amazon S3 und Azure Blob können Daten einem nicht vorgesehenen Publikum preisgeben. Allein auf Shodan finden sich mehr als drei Millionen FTP-Server, die via der Abfrage ftp port: „21“ öffentlich zugänglich sind.
Exponierte und nicht geschützte APIs
Mit zunehmender Verbreitung von DevOps und Automatisierung werden deklarative APIs alltäglich. Einige Anwendungen haben ein robustes Design und Zugriffskontrolle auf APIs, während andere nur sehr laxe oder gar keine Sicherheitsmaßnahmen einsetzen. Einige dieser Dienste sind als Microservice konzipiert, auf den nur bestimmte User Zugriff haben. Werden diese APIs versehentlich offen oder unverschlüsselt gelassen, können sie für verschiedene Ziele missbraucht werden, z. B. für die Nutzung von Rechenressourcen, die Installation von Backdoors oder einfach für Sabotage des normalen Betriebs einer Organisation.
Ein zweiter Teil stellt die für Linux-Umgebungen am häufigsten eingesetzten Malware-Familien, sowie weitere bösartige Techniken dar und zeigt auch Gegenmaßnahmen gegen diese Bedrohungen auf.