Kali Linux kommer præ-udstyret med alle de nødvendige værktøjer til penetrationstest. Et sådant værktøj er Metasploit-rammen, der gør det muligt for røde holdspillere at udføre rekognoscering, scanne, opregne, og udnytte sårbarheder for alle typer applikationer, netværk, servere, operativsystemer og platforme.
Selvom hovedfunktionaliteten i Metasploit fokuserer på præ- og post-udnyttelse af gennemtrængende opgaver, er den også nyttig til udnyttelsesudvikling og sårbarhedsforskning.
Denne artikel introducerer hovedkomponenterne i Metasploit-rammen. Den demonstrerer, hvordan man bruger Metasploit-moduler til scanning, optælling og udnyttelse på en sårbar MySQL-database, der hostes på en maskine kendt som Metasploitable 2.
Metasploit er det mest almindeligt anvendte pentesting-værktøj, der kommer forudinstalleret i Kali Linux. Hovedkomponenterne i Metasploit er msfkonsol og de moduler, det tilbyder.
Hvad er msfconsole?
msfkonsol er den mest almindeligt anvendte shell-lignende alt-i-en-grænseflade, der giver dig adgang til alle funktioner i Metasploit. Den har Linux-lignende kommandolinjeunderstøttelse, da den tilbyder automatisk fuldførelse af kommandoer, tabulering og andre bash-genveje.
Det er hovedgrænsefladen, der giver dig mulighed for at arbejde med Metasploit-moduler til at scanne og starte et angreb på målmaskinen.
Metasploit har små kodestykker, der aktiverer dens hovedfunktionalitet. Før du forklarer modulerne, skal du dog være klar over følgende tilbagevendende begreber:
- Sårbarhed: Det er en fejl i målets design eller kode, der gør det sårbart over for udnyttelse, der fører til videregivelse af fortrolige oplysninger.
- Udbytte: En kode, der udnytter den fundne sårbarhed.
- Nyttelast: Det er en kode, der hjælper dig med at nå målet om at udnytte en sårbarhed. Det kører inde i målsystemet for at få adgang til måldataene, som at opretholde adgang via Meterpreter eller en omvendt shell.
Går nu mod de fem hovedmoduler i Metasploit:
- Hjælpe: Hjælpemodulet indeholder et sæt programmer såsom fuzzere, scannere og SQL-injektionsværktøjer til at indsamle information og få en dybere forståelse af målsystemet.
- Indkodere: Indkodere krypterer nyttelasterne/udnyttelsen for at beskytte dem mod signaturbaserede antivirusløsninger. Da nyttelaster eller udnyttelser indeholder null eller dårlige tegn, er der store chancer for, at de bliver opdaget af en antivirusløsning.
- Udbytte: Som diskuteret tidligere er en udnyttelse en kode, der udnytter målsårbarhederne til at sikre systemadgang via nyttelast.
- Nyttelast: Som nævnt før hjælper nyttelast dig med at nå det ønskede mål med at angribe målsystemet. Det betyder, at de enten vil hjælpe dig med at få en interaktiv shell eller hjælpe dig med at vedligeholde en bagdør, køre en kommando eller indlæse malware osv. Metasploit tilbyder to typer nyttelaster: trinløse nyttelaster og trinløse nyttelaster.
- Stolpe: Modulet efter udnyttelse vil hjælpe dig med at indsamle yderligere oplysninger om systemet. For eksempel kan det hjælpe dig med at dumpe kodeords-hasherne og lede efter brugeroplysninger til lateral bevægelse eller privilegieeskalering.
Du kan bruge følgende kommandoer til at se hvert modul og dets kategorier:
cd /usr/share/metasploit-framework/modules
ls
træ -L 1 modulnavn/
For at begynde at bruge Metasploit-grænsefladen skal du åbne Kali Linux-terminalen og skrive msfkonsol.
Som standard åbner msfconsole op med et banner; for at fjerne det og starte grænsefladen i stille tilstand, skal du bruge msfkonsol kommando med -q flag.
Grænsefladen ligner en Linux-kommandolinjeskal. Nogle Linux Bash-kommandoer, den understøtter, er ls, clear, grep, historie, jobs, kill, cd, exit osv.
Type Hjælp eller et spørgsmålstegn"?" for at se listen over alle tilgængelige kommandoer, du kan bruge inde i msfconsole. Nogle af de vigtigste, som vi vil bruge i denne artikel, er:
Kommando | Beskrivelse |
---|---|
Søg | Giver dig mulighed for at søge fra Metasploit-databasen baseret på den givne protokol/applikation/parameter |
brug | Giver dig mulighed for at vælge et bestemt modul og ændrer konteksten til modulspecifikke kommandoer |
info | Giver information om det valgte modul |
at vise | Viser information om det givne modulnavn og muligheder for det aktuelle modul |
kontrollere | Kontrollerer, om målsystemet har en sårbarhed |
sæt | Det er en kontekstspecifik variabel, der konfigurerer muligheder for det aktuelle modul |
deaktiveret | Fjerner tidligere indstillede parametre |
løb | Udfører det aktuelle modul |
Inden du begynder, skal du konfigurere Metasploit-databasen ved at start af PostgreSQL-serveren og initialiser msfconsole-databasen som følger:
systemctl start postgresql
msfdb init
Kontroller nu databasestatus ved at initialisere msfconsole og køre db_status kommando.
Til demonstrationsformål skal du opsætte den open source sårbare Linux-maskine Metasploitable2.
MySQL Reconnaissance med msfconsole
Find IP-adressen på den Metasploitable-maskine først. Brug derefter db_nmap kommando i msfconsole med Nmap-flag for at scanne MySQL-databasen på 3306 Havn.
db_nmap -sV -sC -p 3306
Du kan køre den almindelige nmap -p- kommando for at bekræfte MySQL-databasens portnummer.
Relaterede: Nmap for begyndere: Få praktisk erfaring med portscanning
Brug Søg mulighed for at søge efter et hjælpemodul til at scanne og opregne MySQL-databasen.
søgetype: auxiliary mysql
Fra ovenstående liste kan du bruge auxiliary/scanner/mysql/mysql_version modul ved at indtaste modulnavnet eller det tilhørende nummer for at scanne MySQL-versionsdetaljer.
brug 11
Eller:
brug auxiliary/scanner/mysql/mysql_version
Brug nu vise muligheder kommando for at vise de nødvendige parametre for at udføre det aktuelle modul:
Outputtet viser, at den eneste nødvendige og deaktiverede mulighed er RHOSTS, som er IP-adressen på målmaskinen. Brug sæt rhosts kommando for at indstille parameteren og køre modulet som følger:
Outputtet viser de samme MySQL-versionsdetaljer som db_nmap fungere.
Bruteforce MySQL-rodkonto med msfconsole
Efter scanning kan du også brute force MySQL root-konto via Metasploit's hjælpe (scanner/mysql/mysql_login) modul.
Du skal indstille PASS_FILE parameter til ordlistestien, der er tilgængelig inde /usr/share/wordlists:
sæt PASS_FILE /usr/share/wordlistss/rockyou.txt
Angiv derefter IP-adressen på målmaskinen med RHOSTS-kommandoen.
sæt RHOSTS
Sæt BLANK_PASSWORDS til sand, hvis der ikke er angivet en adgangskode til root-kontoen.
sæt BLANK_PASSWORDS sandt
Kør endelig modulet ved at skrive løb i terminalen.
MySQL-optælling med msfconsole
msfconsole giver dig også mulighed for at opregne databasen ved hjælp af auxiliary (admin/mysql/mysql_enum) modul. Det returnerer alle konti med detaljer såsom tilknyttede privilegier og kodeords-hash.
For at gøre det skal du angive adgangskoden, brugernavnet og rhosts-variablen.
sæt adgangskode ""
sæt brugernavn root
sæt rhosts
Kør endelig modulet ved at skrive:
løb
MySQL-udnyttelse med msfconsole
Fra opregningsfasen er det klart, at root-kontoen har filrettigheder, der gør det muligt for en angriber at udføre indlæs_fil() fungere. Funktionen giver dig mulighed for at udnytte MySQL-databasen ved at indlæse alle data fra filen /etc/password via auxiliary(/admin/mysql/mysql_sql) modul:
Indstil igen brugernavnet, adgangskoden og rhosts-variablen. Udfør derefter en forespørgsel, der påkalder funktionen load_file() og indlæser /etc/passwd fil.
sæt sql vælg load_file(\"/etc/password\")
Metasploit-moduler hjælper i alle faser af penetrationstestning. Metasploit giver også brugerne mulighed for at oprette deres egne moduler.
Denne artikel opsummerer nogle hovedmoduler i Metasploit-rammeværket og demonstrerer, hvordan man scanner, opregner og udnytter en MySQL-database på Metasploitable 2-maskinen.
Metasploit er ikke det eneste penetrationstestværktøj, du vil bruge som cybersikkerhedsprofessionel. Der er flere andre værktøjer, som du skal sætte dig ind i, hvis du vil blive sikkerhedsekspert.
Hvis du undrer dig over, hvordan de professionelle tester for penetration, vil denne guide give dig en hjælpende hånd.
Læs Næste
- Linux
- Etisk hacking
- Hacking
- Linux apps

Rumaisa er freelanceskribent på MUO. Hun har båret mange hatte, fra en matematiker til en informationssikkerhedsentusiast, og arbejder nu som SOC-analytiker. Hendes interesser inkluderer at læse og skrive om nye teknologier, Linux-distributioner og alt omkring informationssikkerhed.
Abonner på vores nyhedsbrev
Tilmeld dig vores nyhedsbrev for tekniske tips, anmeldelser, gratis e-bøger og eksklusive tilbud!
Klik her for at abonnere