„Metasploit“: alle Exploits zum Preis von einem

(Di Bruno Riccio)
06/05/24

Was würden Sie denken, wenn ich Ihnen sagen würde, dass es ein Tool gibt, das die am weitesten verbreiteten Techniken der Schwachstellenbewertung, Penetrationstests, digitaler Forensik usw. vereint?

„Metasploit“ ist ein Rahmen für Penetrationstests, entwickelt von Rapid 7 LCC1, das Informationen zu Schwachstellen bereitstellt, Pentesting-Vorgänge vereinfacht und die Entwicklung von IDS (Intrusion Detection Systems) erleichtert.

Ein Framework ist eine Software-Infrastruktur, die eine Grundstruktur und eine Reihe von Tools, Bibliotheken und Richtlinien (eine Reihe von Funktionen und Tools, die bereits „gebrauchsfertig“ sind) bereitstellt, damit sich der Benutzer auf die Lösung/Aktion des jeweiligen Problems konzentrieren kann übernehmen, ohne Funktionen implementieren zu müssen, die jemand anderes bereits erstellt hat, oder bereits geschriebenen Code für ähnliche Aufgaben neu schreiben zu müssen.

Hier sind die Grundprinzipien von Metasploit:

1. Große Community und Unterstützung: Da es Open Source ist und (in der kostenlosen Version) auf allen Linux-basierten Systemen vorinstalliert ist, wird es von einer großen Community von Entwicklern und Sicherheitsforschern unterstützt, die neue Module beisteuern. Diese aktive Community trägt dazu bei, Metasploit auf dem neuesten Stand zu halten und auf neue Bedrohungen und neu auftretende Schwachstellen zu reagieren.

2. Datenbank ausnutzen: Metasploit enthält eine Datenbank mit Exploits (die Definition folgt in Kürze), die es Benutzern ermöglicht, diese zu suchen, zu filtern und gegen eine Vielzahl von Systemen und Diensten einzusetzen. Diese Datenbank wird ständig aktualisiert, um die neuesten Schwachstellen und entsprechenden Exploits aufzunehmen.

3. Benutzeroberfläche: Metasploit bietet mehrere Benutzeroberflächen, darunter eine Befehlszeilenversion und eine GUI (Metasploit Gemeinschaftsausgabe und Metasploit Pro2), die die Nutzung des Frameworks auch für weniger erfahrene Benutzer vereinfachen.

4. Ethischer Gebrauch: Obwohl Metasploit in falschen Händen für illegale Zwecke verwendet werden kann, verwenden die meisten Benutzer es, um die Sicherheit ihrer Systeme zu testen und zu verbessern oder als Trainingstool, um Schwachstellen und Angriffstechniken besser zu verstehen (blaues Team, aber auch rotes Team).

Im Wesentlichen ist Metasploit ein leistungsstarkes und flexibles Tool, das von Cybersicherheitsexperten, Forschern, Unternehmen und Regierungsorganisationen verwendet wird, um die Sicherheit von Computersystemen zu bewerten und zu verbessern. Es ist jedoch von entscheidender Bedeutung, es ethisch und legal zu nutzen.

AUSBEUTEN

Im Allgemeinen a ausbeuten ein Anleitungsset oder Code, der speziell dafür entwickelt wurde, eine bestimmte Schwachstelle oder Schwachstelle in einem Computersystem oder einer Anwendung auszunutzen. Bei erfolgreicher Ausführung ermöglicht ein Exploit dem Angreifer, sich unbefugten Zugriff auf das Zielsystem zu verschaffen, beliebigen Code auszuführen, die Systemsicherheit zu gefährden oder andere bösartige Aktionen durchzuführen. Diese Exploits können verschiedene Arten von Hardware- oder Software-Schwachstellen ausnutzen, wie etwa absichtliche und unbeabsichtigte Programmierfehler (Hintertüren), Pufferüberläufe, Code-Injektionen usw.

Konkret bietet Metasploit eine Reihe von Exploits, die auf der Grundlage bestehender Schwachstellen im Zielsystem genutzt werden können, die dem Angreifer nach einem bestimmten Scan aufgedeckt werden.

Verwendung von Metasploit-Scanmodulen wie „„auxiliary/scanner/portscan/tcp“können Sie einen Scan nach offenen Ports und Überwachungsdiensten auf dem Zielsystem durchführen. Dies bietet einen Überblick über potenzielle Einstiegspunkte in das System.

Exploits können in zwei Typen eingeteilt werden:

  • Ausnutzen tätig: Sie werden auf einem Zielsystem ausgeführt, nutzen das System aus, führen die spezifische Aufgabe aus und hören auf zu existieren.

  • Ausnutzen passiv: Sie warten, bis das Zielsystem eine Verbindung zum Exploit herstellt. Dieser Ansatz wird häufig von Angreifern im Internet verwendet, die zum Herunterladen von Dateien oder Software auffordern.

PAYLOAD

Un Nutzlast, wörtlich „Zahlung einer Gebühr“, ist ein Codestück, das über den Exploit ausgeführt wird. Der Unterschied zwischen beiden besteht darin, dass Exploits verwendet werden, um in ein System einzudringen, und Payloads verwendet werden, um bestimmte Aktionen auszuführen.

Beispielsweise kann ein Keylogger als Payload in Verbindung mit einem Exploit verwendet werden. Sobald der Exploit erfolgreich ist, wird der Keylogger auf dem System des Ziels installiert.

HILFSMITTEL

Die Hilfsmittel sind Module, die Ihnen dabei helfen, benutzerdefinierte Funktionen auszuführen, die über die Ausnutzung eines Systems hinausgehen. Dazu gehören Portscanner, Fuzzer, Sniffer und mehr.

Hier sind einige Beispiele:

  1. msfconsole: Die Metasploit-Konsole ist die wichtigste Befehlszeilenschnittstelle für die Interaktion mit dem Framework. Damit können Sie Befehle ausführen, Module laden, Exploits starten und Penetrationstests durchführen.

  2. msfvenom: Ein Tool zum Generieren benutzerdefinierter Nutzlasten. Ermöglicht Benutzern das Erstellen von Payloads zum Ausnutzen bestimmter Schwachstellen oder für Reverse-Shell-Zwecke.

  3. Meterdolmetscher: Eine vielseitige Metasploit-Nutzlast, die eine breite Palette von Post-Exploitation-Funktionen auf kompromittierten Systemen bereitstellt. Es umfasst Funktionen wie Dateisystemzugriff, Fernsystemsteuerung, Bildschirmaufnahme und mehr.

  4. Autopwn: Ein Modul, das den Prozess der Suche und Ausnutzung von Schwachstellen auf einem Host oder Netzwerk automatisiert. Es nutzt eine Vielzahl von Exploits, um Systeme automatisch auf bekannte Schwachstellen zu testen.

Wie wird es benutzt?

Vor der Angriffsphase stehen selbstverständlich wie bei jedem herkömmlichen Angriff die Erkundung und Analyse der Schwachstellen des Gegners.

Nahezu jedes erdenkliche Aufklärungstool lässt sich in Metasploit integrieren und ermöglicht so die Lokalisierung der gesuchten Schwachstelle.

Sobald eine Schwachstelle identifiziert wird, wird die umfangreiche und modulare Metasploit-Datenbank automatisch nach dem Exploit durchsucht, der diese Schwachstelle öffnet und den Zugriff auf das Gerät des Opfers ermöglicht. Zum Beispiel der Exploit Ewiges Blau3 des NSA (US National Security Agency) wurde perfekt für Metasploit angepasst und ist eine zuverlässige Wahl im Umgang mit ungepatchten Legacy-Windows-Systemen. EternalBlue verwendet eine Technik namens Poolpflege, was eine Art Angriff ist Haufenspray (Technik zur Erleichterung der Ausführung von beliebigem Code auf dem Opfercomputer) in die Kernel-Speicherstruktur. Indem es anfällige Windows-Systeme ins Visier nimmt, schleust es einen Shellcode ein, der es dem Angreifer ermöglicht, die IP-Adresse der Maschine zu verwenden, um direkt mit dem Server Message Block (SMB)-Protokoll zu kommunizieren, einem Dateifreigabeprotokoll, das die gemeinsame Nutzung von Windows-Systemen ermöglicht, die mit demselben Netzwerk oder derselben Domäne verbunden sind Daten und Ordner; Es ermöglicht Computern außerdem, Drucker und serielle Schnittstellen von anderen Computern innerhalb desselben Netzwerks gemeinsam zu nutzen. Es wurde von Angreifern zur Installation genutzt Ransomware in den Geräten der Opfer, d. h. eine Art Malware, die die Daten des Opfers verschlüsselt und ein Lösegeld verlangt, um sie zu entschlüsseln.

Doch wie funktioniert es in der Praxis?

Der Vorgang ist sehr einfach und intuitiv: Starten Sie Metasploit einfach mit dem Befehl „Starten Sie msfconsole” und suchen Sie nach (search) in diesem Fall die Ausbeutung des Interesses „Ewiges Blau“.

Uns werden die verfügbaren Exploits mit ihren Beschreibungen angezeigt. Jetzt müssen wir nur noch entscheiden, welches wir verwenden und an wen wir es weiterleiten möchten.

Mit den Befehlen, die ich verwendet habe, können Sie eine Reverse-Shell auf dem Computer des Opfers erstellen ... ganz einfach, oder? Ja und nein!

Es gibt unzählige Befehle, die verwendet werden können (die Kombination mit Exploits und Payloads nicht mitgerechnet). Die einzige Lösung besteht darin, „herumzuspielen“ und sich auf das Meer an Möglichkeiten einzulassen, die dieses Tool bietet!

Ein weiteres Beispiel könnte mit der perfekten Integration zwischen Metasploit und seinem integrierten Modul zusammenhängen John The Ripper (Tool zum Knacken von Passwörtern, über das ich im vorherigen Artikel gesprochen habe4).

das Modul 'auxiliary/analyze/jtr_crack_fast' wurde erstellt, um die Verwendung von JTR im Framework zu erleichtern. Es funktioniert gegen bekannte Windows-Hashes (NTLM und LANMAN). Verwenden Sie einfach die Hashes in der Datenbank als Eingabe und stellen Sie dann sicher, dass Sie eine Datenbank „gehasht“ haben, bevor Sie mit der Cracking-Phase beginnen. Das Modul sammelt die Hashes in der Datenbank und übergibt sie an Johns Binärdateien, die nun über eine Datei im Format „in das Metasploit-Framework eingebunden sind.“pwdump” generiert.

Sobald das anfängliche Bruteforce der Wortliste abgeschlossen ist, werden inkrementelle Bruteforce-Regeln namens „All4 & Digits5“ verwendet, um zusätzliche Kombinationen zu erzwingen. Diese Regelsätze werden unten angezeigt und sind in derselben Konfigurationsdatei john.conf im Framework selbst zu finden. Geknackte Werte werden der Wortliste hinzugefügt, sobald sie gefunden werden. Das ist von Vorteil:

Die zuvor geknackten Hashes werden aus der Datei „john.pot” beim Starten einer Operation und diese werden als Werte verwendet Samen für spätere Ausführungen, wodurch möglicherweise andere zuvor nicht geknackte Hashes gebrochen werden können. Schließlich werden erkannte Kombinationen aus Benutzername und Passwort an die Datenbank gemeldet und dem Host/Dienst zugeordnet

Abschließende Gedanken zur Einzigartigkeit von Metasploit

Es gibt mehrere Aspekte, die zum Ruhm von Metasploit im Bereich Cybersicherheit beitragen:

  1. Große Auswahl an Funktionen: Metasploit bietet eine breite Palette an Tools und Modulen, die alle Phasen des Penetrationstests abdecken, von der Aufklärung über die Exploit-Ausführung bis hin zur Erhöhung von Berechtigungen und darüber hinaus. Diese umfassende Tool-Suite macht es zu einer unverzichtbaren Ressource für Cybersicherheitsexperten.

  2. Benutzerfreundlichkeit: Trotz der Komplexität der Sicherheitsaufgaben, die es ausführen kann, ist Metasploit so konzipiert, dass es auch für Anfänger zugänglich ist. Es bietet intuitive Benutzeroberflächen wie eine Befehlszeilenkonsole und eine GUI-Version für Metasploit Community Edition und Metasploit Pro, die die Navigation und Verwendung des Frameworks erleichtern.

  3. Ständige Aktualisierung: Metasploit wird von einer großen Community von Entwicklern und Sicherheitsforschern unterstützt, die ständig neue Module, Exploits und Updates beisteuern, um das Framework über die neuesten Bedrohungen und Schwachstellen auf dem Laufenden zu halten.

  4. Flexibilität und Anpassungsfähigkeit: Dank seiner modularen Architektur kann Metasploit erweitert und an spezifische Benutzerbedürfnisse angepasst werden. Dadurch können Benutzer das Framework anpassen und neue Module entwickeln, um individuelle Sicherheitsanforderungen zu erfüllen.

  5. Community-Unterstützung und Dokumentation: Metasploit erfreut sich einer großen Benutzerbasis und solider Community-Unterstützung. Es gibt Foren, detaillierte Dokumentationen und Online-Ressourcen, die Benutzern beim Lernen und Lösen von Problemen helfen.

  6. Open Source und kostenlos: Der Kern des Metasploit-Frameworks ist Open Source und wird unter der „BSD“-Lizenz vertrieben, was bedeutet, dass es frei von ist Download, verwenden e modificare. Dies macht es einem breiten Nutzerkreis zugänglich, unabhängig von finanziellen Ressourcen.

Insgesamt ist es diese Kombination aus Leistung, Benutzerfreundlichkeit, Flexibilität und Community-Unterstützung, die Metasploit zu einem der bekanntesten und am weitesten verbreiteten Cybersicherheits-Frameworks der Welt macht.