
Lassen Sie uns die Technologien untersuchen, auf denen jeder Gesichtspunkt basiert. Warum stehen Fachleute, die so viele Gemeinsamkeiten haben, auf entgegengesetzten Seiten dieser Debatte? Was sind die Prioritäten und Anliegen, die diesen gegensätzlichen Präferenzen zugrunde liegen, und unterscheiden sie sich wirklich?
Die Vereinbarung
Lassen Sie uns zunächst eines klarstellen: Was NICHT zur Debatte steht, ist die Bedeutung der Identifizierung von Sicherheitslücken in der IT-Infrastruktur. Selbst Sicherheitstechniker, die noch nicht über eine Scanlösung verfügen, wissen, dass ihr Unternehmen gefährdet ist. Cyberkriminalität nimmt zu:
- Die Häufigkeit der Ransomware-Angriffe hat sich von 2020 bis 2021 verdoppelt (Verizon), und bisherige Berichte deuten darauf hin, dass sie sich 2022 erneut verdoppeln werden.
- Eine kürzlich durchgeführte Studie ergab, dass Cyberkriminelle in 93% der Unternehmensnetzwerke eindringen können (betanews.com).
Auch die Ausnutzung von CVEs und Konfigurationslücken durch Angreifer nimmt zu. Gartner prognostiziert, dass bis 2023 99% der Sicherheitslücken in der Cloud auf bekannten Sicherheitslücken und Fehlkonfigurationen beruhen werden.
Das Scannen von Sicherheitslücken ist nicht optional. Wenn Sie es nicht tun, tun Sie es einfach nicht noch.
Methoden zum Scannen von Sicherheitslücken
In der Debatte zwischen Agenten und ohne Agenten geht es im Grunde um Zugriff und Timing: Wie und wann greift der Scanner auf das System zu, das er scannt? Agentengestütztes Scannen basiert auf Software, die in Echtzeit auf dem Computer ausgeführt wird, auf dem gerade gescannt wird, wohingegen das agentenlose Scannen nicht der Fall ist.
Agentengestütztes Scannen nach Sicherheitslücken
Scan-Agenten sind relativ einfach. Der Agent ist eine Software, die Sie auf dem System installieren, das Sie testen möchten. Dieser Agent wird auf dem System ausgeführt, liest Konfigurationsdateien, überprüft Ports und Protokolle und sammelt Live-Daten für Warnungen und Berichte — alles auf dem Scanziel.

Dieser Ansatz hat überzeugende Vorteile, aber auch genug Nachteile, um das Scannen ohne Agenten zu fördern.
Agentenloses Scannen von Sicherheitslücken
Es gibt verschiedene Ansätze für agentenloses Scannen, jede mit ihren Vor- und Nachteilen. Allen gemeinsam ist, dass sie nicht auf Ihrem Scanziel ausgeführt werden. Es gibt drei gängige Typen von agentenlosen Schwachstellenscannern:
Schwachstellensuche per Fernzugriff wird außerhalb des Zielsystems ausgeführt. Es sammelt Echtzeitinformationen, indem es über eine Betriebssystem-Shell eine Verbindung zum Scanziel herstellt.

Cloud Shell-Sicherheitslücken scannen läuft auch in Echtzeit, außerhalb des Zielsystems. Was anders ist, ist die Art der Verbindung. Der Zugriff auf diese Art von Tool erfolgt über eine Cloud-Shell, eine Befehlszeilenumgebung speziell für die Verwaltung der Cloud-Infrastruktur. Jede Cloud-Lösung hat ihre eigene Shell, z. B. AWS CloudShell oder Azure Cloud Shell.

Scannen von Bildschnappschüssen bewertet eine Kopie des Zielsystems und nicht das System selbst. Es interagiert niemals mit dem Scanziel.

Find and fix the security risks that pose the biggest threat to your business.
Die Uneinigkeit
Warum gibt es so viele verschiedene Ansätze zur Bewertung von Infrastrukturschwachstellen? Die Ausführung eines Agenten direkt auf dem Scanziel ist ein so einfacher Ansatz, dass er wie ein Kinderspiel erscheint. Es gibt so viele Vorteile, darunter:
- Alle gesammelten Informationen beziehen sich auf den aktuellen Zustand Ihres aktuellen Systems.
- Es ist keine Fernanmeldung erforderlich, was bedeutet, dass kein neuer Endpunkt, keine Fernverbindungsverwaltung und keine Verzögerungen oder Verbindungsprobleme erforderlich sind.
- Der Scanner kann mit wenigen Sicherheitseinschränkungen auf alle erforderlichen Systemelemente zugreifen.
- Es sind keine Schnappschüsse erforderlich, was Zeit und Kosten spart.
Agenten sind mächtig und schnell. Sie geben Ihnen die aktuelle Wahrheit. Warum benutzt sie dann nicht jeder?
Die Herausforderungen der agentengestützten Schwachstellenanalyse
Manche Leute mögen es nicht, einen Agenten auf ihren laufenden virtuellen Maschinen zu installieren. Möglicherweise fühlen Sie sich mit der minimalen Kontrolle, die Sie über den Agenten haben, nicht wohl. Sie haben jeden Computer sorgfältig so konfiguriert, dass er seine spezifische Aufgabe erfüllt, und Sie möchten nicht, dass ein Agent seine Ressourcen beansprucht. Schließlich sind einige Agenten ressourcenfressend. Es ist vernünftig, sich Gedanken darüber zu machen, was bei Spitzenauslastung passiert, während ein Agent einen gründlichen Scan Ihres Betriebssystems durchführt. Dies kann eine langsame oder nicht reagierende Website, eine fehlgeschlagene Geschäftstransaktion oder eine Art von Betriebsverlangsamung bedeuten.
Betrachten wir auch die Skala. Um die Sicherheitsanfälligkeit aller virtuellen Maschinen in Ihrer Infrastruktur zu beurteilen, müssen Sie den Agenten auf jedem Computer installieren. Sie müssen Zeit in die Installation, Wartung und Aktualisierung all dieser Agenten investieren. Außerdem ist die Summe der Ressourcen, die sie verbrauchen, mit Kosten verbunden. Wenn ein Agent die Verarbeitung auf einem Computer überlastet, denken Sie darüber nach, wie sich das auf 100, 1000 oder 10.000 auswirkt.
Stellen Sie sich jetzt vor, der Agent hat ein Speicherleck. Es ist sicherlich bekannt, dass es passiert. Nachdem Sie Leistungsprobleme festgestellt haben, identifizieren Sie ein Speicherproblem auf der virtuellen Maschine und stellen fest, dass der Agent zum Scannen von Sicherheitslücken die Leckquelle ist. Um das Problem zu beheben, müssen Sie den Agenten jetzt häufig anhalten und neu starten. Das ist genug lästige Arbeit auf einem System, aber lassen Sie uns noch einmal dieses Szenario in großem Maßstab betrachten.
Manchmal haben Sie nicht die Möglichkeit, Agenten auf Infrastrukturressourcen zu installieren. Viele Unternehmen verlassen sich bei ihren IT-Infrastrukturanforderungen auf einen Drittanbieter. Dieser Drittanbieter erlaubt möglicherweise keine Agenten auf seinen Systemen. Tatsächlich könnte die Installation eines solchen Systems zum Erlöschen des Geschäftsvertrags führen.
Schwachstellensuche aus der Ferne
Wenn Sie keine Agenten installieren dürfen oder Agenten als Software ansehen, die Ihr laufendes System gefährdet, bevorzugen Sie möglicherweise eine Remote-Methode, um die Anfälligkeit Ihres Systems für Cyberkriminalität zu bewerten. Für viele Ressourcen, wie Server und virtuelle Maschinen, bedeutet dies den Fernzugriff auf eine Betriebssystem-Shell (wie SSH oder WinRM) zur Durchführung von Bewertungen. Ein Programm, das außerhalb des Systems existiert, befiehlt der Shell, die benötigten Informationen abzurufen.
Remote-Scans lösen viele Bedenken von Betriebsexperten in Bezug auf agentengestütztes Scannen. Auf dem Scanziel befindet sich keine Software und es besteht kein Risiko für Geschäftsverluste, die ein aufgeblähter Agent verursachen kann.
Um aus der Ferne zu scannen, benötigt das externe Programm ein Benutzerkonto und einen offenen Port zum System. Natürlich handelt es sich dabei um neue Sicherheitsendpunkte — Mittel, mit denen ein Angreifer in das System eindringen kann. Bei der Identifizierung von Sicherheitslücken schaffen Sie also tatsächlich neue Möglichkeiten für Sicherheitslücken! SSH ist hochsicher, aber es können immer noch Probleme mit dem Benutzerkonto, der Authentifizierung, der Internetpräsenz usw. auftreten. Viele Sicherheitsexperten fühlen sich mit einer offenen Einladung zu einem Betriebssystem einfach nicht wohl.
Cloud Shell-Sicherheitslücken scannen
Die meisten Cloud-Lösungen bieten Shells, mit denen Sie mit ihren Systemen interagieren können, als ob Sie direkt auf diesen Systemen wären. Diese Cloud-Shells ähneln Remote-Shells, Sie müssen jedoch nichts aus der Ferne öffnen. Es ist kein separates Benutzerkonto erforderlich, da Cloud-Shells vorhandene Systemverwaltungskonten verwenden.
Cloud Shells sind einfach. Sie können eine Instance-Verbindung herstellen, um all Ihre Cloud-Ressourcen zu aktualisieren, zu verwalten und zu konfigurieren. In gewisser Weise ist die Schwachstellenanalyse mithilfe einer Cloud-Shell wie das Beste aus agentengestütztem und Remote-Scannen. Es gibt keinen Agenten, der Ressourcen auf dem eigentlichen Zielsystem beansprucht, aber der Scan hat fast den gesamten Zugriff, den ein solcher Agent hätte. Bei neuen Protokollen besteht keine riskante Verbindung; die Cloud-Shell ist ein natürlicher Bestandteil des Systems.
Beim Scannen von Cloud-Shell-Sicherheitslücken besteht jedoch immer noch die Möglichkeit, dass Fehler auftreten. Zwar besteht beim Remote-Scanning nicht das Risiko, dem Internet ausgesetzt zu sein und es besteht kein Authentifizierungsrisiko, aber es besteht dennoch ein Risiko, das vom Benutzer ausgeht. Jeder Benutzer ist ein Einstiegspunkt in das System.
Snapshot-Schwachstellen-Scan und Side-Scanning
Wenn Sie die Risiken, die durch den Zugriff auf ein laufendes System entstehen, völlig ablehnen, ziehen Sie möglicherweise das Scannen von Snapshot-Schwachstellen vor. Bei diesem Ansatz untersuchen Sie eine Kopie des Ziels und nicht das Ziel selbst. Die Untersuchung beeinträchtigt den Betrieb des Scanziels überhaupt nicht.
Beim Snapshot-Scannen wird eine vollständige Kopie der gesamten Festplatte des Ziels erstellt und diese Kopie gescannt. Dabei werden alle Dateien, Konten, Tools und Konfigurationen auf der Festplatte durchsucht. Sie erfahren, welche Pakete installiert sind und welche Software-Sicherheitslücken bestehen.
Die Einschränkung beim Scannen von Snapshot-Sicherheitslücken besteht darin, dass die Systemkopie nicht live ist. Sie bewerten das System im Ruhezustand. Sie können Live-Verhaltensweisen, die das Gerät gefährden könnten, wie z. B. das Öffnen bestimmter Anschlüsse, nicht beobachten.
Seitliches Scannen behebt diese Einschränkung. Sie machen nicht einfach einen Schnappschuss des Ziels, sondern starten das Betriebssystem auf diesem Image. Sie können sehen, welche Systeme laufen, welche Ports geöffnet sind, welche Prozesse ausgeführt werden, was die Kernelmodule sind und andere Informationen, auf die Sie auf einem ruhenden System nur schwer zugreifen könnten.
Ist das Seitenscannen eine perfekte Darstellung von allem, was auf dem Zielcomputer passiert? Nein, aber es ist sehr, sehr nah — nah genug für viele Teams und viel näher als ein Snapshot-Scan, der nicht gerade ausgeführt wird.
Einige Befürworter des Snapshot-Scannens bestehen darauf, dass es möglich ist, alles, was Sie wissen müssen, anhand einer Kopie im Ruhezustand zu lernen. Allerdings müssten Sie die Startroutine des Systems manuell zusammenstellen, was die realistischen Erwartungen übertrifft.
Was den Gegnern von Snapshot- und Side-Scanning zu schaffen macht, ist der Zeitfaktor. Da das Kopieren (und beim seitlichen Scannen der Start) der Bilder einige Zeit in Anspruch nimmt, wird bei diesen Scans nicht der aktuelle Zustand der Zielsysteme bewertet. Das klingt vielleicht nach einer kleinen Auswahl, aber angesichts der Geschwindigkeit, mit der sich die Infrastruktur heute ändern und wachsen kann, ist das für viele Unternehmen ein berechtigtes Problem.
Was ist das Richtige für dich?
Welcher Ansatz ist also der Gewinner? Nun, aus diesem Grund ist die Debatte nie beigelegt: Die eigentliche Frage ist, welcher Ansatz der richtige ist Sie. Die besonderen Bedürfnisse und Prioritäten Ihres Unternehmens bestimmen die beste Lösung.
Nehmen wir zum Beispiel an, dass Sicherheit für Ihr Finanzunternehmen Ihre oberste Priorität ist. Möglicherweise bevorzugen Sie die agentengestützte Suche nach Sicherheitslücken, da dadurch kein neues Risiko von Sicherheitslücken entsteht.
Ein weiteres Beispiel: Wenn Sie die Infrastruktur für ein E-Commerce-Unternehmen mit hohem Traffic verwalten, haben Leistung und Zuverlässigkeit möglicherweise höhere Prioritäten für Sie. In dieser Situation bedeutet jede Millisekunde oder Wartezeit den Verlust von Kunden und Einnahmen. Schwachstellenanalysen ohne Agenten könnten Ihren Anforderungen besser entsprechen.
Mondoo macht beides
Die Full-Stack-Sicherheitsplattform von Mondoo unterstützt sowohl agentenbasiertes als auch agentenloses Schwachstellen-Scannen.
Der Agent von Mondoo erleichtert einige der Sorgen, die mit agentengestütztem Scannen einhergehen:
- Wir haben es in einer hochperformanten Sprache gebaut, Go.
- Es ist eine einzige Binärdatei; Sie installieren keine Mystery-Dateien auf Ihrem System.
- Es ist leicht in der Ausführung.
Wenn Sie keinen Agenten verwenden möchten, können Sie Mondoo über eine Remote-Verbindung über SSH, WinRM oder EC2 Instance Connect und SSM implementieren. Sie können einen Volume-Scan für einen EBS-Snapshot oder ein Container-Image ausführen — entweder im laufenden oder im Ruhezustand.