Kali Linux kommer förutrustad med alla verktyg som behövs för penetrationstestning. Ett sådant verktyg är Metasploit-ramverket som gör att röda lagspelare kan utföra spaning, skanna, räkna upp, och utnyttja sårbarheter för alla typer av applikationer, nätverk, servrar, operativsystem och plattformar.
Även om huvudfunktionaliteten i Metasploit fokuserar på testuppgifter före och efter exploatering, är den också till hjälp vid exploateringsutveckling och sårbarhetsforskning.
Den här artikeln introducerar huvudkomponenterna i Metasploit-ramverket. Den visar hur man använder Metasploit-moduler för skanning, uppräkning och exploatering på en sårbar MySQL-databas på en maskin som kallas Metasploitable 2.
Metasploit är det mest använda pentestningsverktyget som kommer förinstallerat i Kali Linux. Huvudkomponenterna i Metasploit är msfconsole och de moduler den erbjuder.
Vad är msfconsole?
msfconsole är det mest använda skalliknande allt-i-ett-gränssnittet som låter dig komma åt alla funktioner i Metasploit. Den har Linux-liknande kommandoradsstöd eftersom den erbjuder automatisk komplettering av kommandon, tabbning och andra bash-genvägar.
Det är huvudgränssnittet som låter dig arbeta med Metasploit-moduler för att skanna och starta en attack mot målmaskinen.
Metasploit har små kodsnuttar som möjliggör dess huvudsakliga funktionalitet. Innan du förklarar modulerna måste du dock vara tydlig med följande återkommande begrepp:
- Sårbarhet: Det är ett fel i designen eller koden för målet som gör det sårbart för utnyttjande som leder till att konfidentiell information avslöjas.
- Utnyttja: En kod som utnyttjar den hittade sårbarheten.
- Nyttolast: Det är en kod som hjälper dig att uppnå målet att utnyttja en sårbarhet. Den körs inuti målsystemet för att komma åt måldata, som att bibehålla åtkomst via Meterpreter eller ett omvänt skal.
Går nu mot de fem huvudmodulerna i Metasploit:
- Extra: Hjälpmodulen innehåller en uppsättning program såsom fuzzers, skannrar och SQL-injektionsverktyg för att samla information och få en djupare förståelse av målsystemet.
- Kodare: Kodare krypterar nyttolast/exploatering för att skydda dem mot signaturbaserade antiviruslösningar. Eftersom nyttolaster eller exploateringar innehåller null eller dåliga tecken, finns det stora chanser att de upptäcks av en antiviruslösning.
- Utnyttja: Som diskuterats tidigare är en exploit en kod som utnyttjar målsårbarheterna för att säkerställa systemåtkomst via nyttolaster.
- Nyttolast: Som nämnts tidigare hjälper nyttolaster dig att uppnå det önskade målet att attackera målsystemet. Det betyder att de antingen kommer att hjälpa dig att få ett interaktivt skal eller hjälpa dig att underhålla en bakdörr, köra ett kommando eller ladda skadlig programvara, etc. Metasploit erbjuder två typer av nyttolaster: steglösa nyttolaster och steglösa nyttolaster.
- Posta: Modulen efter exploatering hjälper dig att samla in ytterligare information om systemet. Det kan till exempel hjälpa dig att dumpa lösenords-hasharna och leta efter användaruppgifter för sidorörelse eller privilegieskalering.
Du kan använda följande kommandon för att se varje modul och dess kategorier:
cd /usr/share/metasploit-framework/modules
ls
träd -L 1 modulnamn/
För att börja använda Metasploit-gränssnittet, öppna Kali Linux-terminalen och skriv msfconsole.
Som standard öppnas msfconsole med en banner; för att ta bort det och starta gränssnittet i tyst läge, använd msfconsole kommandot med -q flagga.
Gränssnittet ser ut som ett Linux kommandoradsskal. Vissa Linux Bash-kommandon som den stöder är ls, clear, grep, historia, jobb, kill, cd, exit, etc.
Typ hjälp eller ett frågetecken"?" för att se listan över alla tillgängliga kommandon du kan använda inuti msfconsole. Några av de viktigaste som vi kommer att använda i den här artikeln är:
Kommando | Beskrivning |
---|---|
Sök | Låter dig söka från Metasploit-databasen baserat på det givna protokollet/applikationen/parametern |
använda sig av | Låter dig välja en viss modul och ändrar sammanhanget till modulspecifika kommandon |
info | Ger information om den valda modulen |
visa | Visar information om det angivna modulnamnet och alternativ för den aktuella modulen |
kolla upp | Kontrollerar om målsystemet har en sårbarhet |
uppsättning | Det är en kontextspecifik variabel som konfigurerar alternativ för den aktuella modulen |
avstängd | Tar bort tidigare inställda parametrar |
springa | Kör den aktuella modulen |
Innan du börjar, ställ in Metasploit-databasen genom att startar PostgreSQL-servern och initiera msfconsole-databasen enligt följande:
systemctl starta postgresql
msfdb init
Kontrollera nu databasstatus genom att initiera msfconsole och köra db_status kommando.
För demonstrationsändamål, ställ in den sårbara Linux-maskinen Metasploitable2 med öppen källkod.
MySQL Reconnaissance Med msfconsole
Hitta IP-adressen för den Metasploitable maskinen först. Använd sedan db_nmap kommando i msfconsole med Nmap-flaggor för att skanna MySQL-databasen på 3306 hamn.
db_nmap -sV -sC -p 3306
Du kan köra den vanliga nmap -p- kommando för att bekräfta MySQL-databasens portnummer.
Relaterad: Nmap för nybörjare: Få praktisk erfarenhet av portskanning
Använd Sök möjlighet att leta efter en hjälpmodul för att skanna och räkna upp MySQL-databasen.
söktyp: auxiliary mysql
Från listan ovan kan du använda auxiliary/scanner/mysql/mysql_version modul genom att skriva modulens namn eller tillhörande nummer för att skanna MySQL-versionsdetaljer.
använd 11
Eller:
använd auxiliary/scanner/mysql/mysql_version
Använd nu visa alternativ kommando för att visa de nödvändiga parametrarna som krävs för att exekvera den aktuella modulen:
Utdata visar att det enda nödvändiga och avaktiverade alternativet är RHOSTS som är IP-adressen för målmaskinen. Använd sätta rhosts kommando för att ställa in parametern och köra modulen, enligt följande:
Utdatan visar liknande MySQL-versionsdetaljer som db_nmap fungera.
Bruteforce MySQL Root-konto med msfconsole
Efter skanning kan du också brute force MySQL root-konto via Metasploits auxiliary (skanner/mysql/mysql_login) modul.
Du måste ställa in PASS_FILE parameter till ordlistans sökväg som är tillgänglig inuti /usr/share/wordlists:
ställ in PASS_FILE /usr/share/wordlistss/rockyou.txt
Ange sedan IP-adressen för måldatorn med kommandot RHOSTS.
ställ in RHOSTS
Uppsättning BLANK_PASSWORDS till sant om det inte finns något lösenord inställt för root-kontot.
ställ in BLANK_PASSWORDS sant
Slutligen, kör modulen genom att skriva springa i terminalen.
MySQL-uppräkning med msfconsole
msfconsole låter dig också räkna upp databasen med hjälp av auxiliary (admin/mysql/mysql_enum) modul. Den returnerar alla konton med detaljer som tillhörande privilegier och hash för lösenord.
För att göra det måste du ange lösenordet, användarnamnet och rhosts-variabeln.
Välj lösenord ""
ställ in användarnamnrot
sätta rhosts
Slutligen, kör modulen genom att skriva:
springa
MySQL-utnyttjande med msfconsole
Från uppräkningsfasen är det tydligt att rotkontot har filprivilegier som gör att en angripare kan köra ladda_fil() fungera. Funktionen låter dig utnyttja MySQL-databasen genom att ladda all data från filen /etc/lösenord via auxiliary(/admin/mysql/mysql_sql) modul:
Återigen, ställ in användarnamn, lösenord och rhosts-variabeln. Kör sedan en fråga som anropar funktionen load_file() och laddar /etc/passwd fil.
set sql välj load_file(\"/etc/lösenord\")
Metasploit-moduler hjälper till i alla faser av penetrationstestning. Metasploit gör det också möjligt för användare att skapa sina egna moduler.
Den här artikeln sammanfattar några huvudmoduler i Metasploit-ramverket och visar hur man skannar, räknar upp och utnyttjar en MySQL-databas på Metasploitable 2-maskinen.
Metasploit är inte det enda penetrationstestverktyget som du kommer att använda som cybersäkerhetsproffs. Det finns flera andra verktyg som du måste bekanta dig med om du vill bli en säkerhetsexpert.
Om du undrar hur proffsen testar penetration, kommer den här guiden att ge dig en hjälpande hand.
Läs Nästa
- Linux
- Etiskt hackande
- Dataintrång
- Linux-appar

Rumaisa är frilansskribent på MUO. Hon har burit många hattar, från en matematiker till en informationssäkerhetsentusiast, och arbetar nu som SOC-analytiker. Hennes intressen inkluderar att läsa och skriva om ny teknik, Linux-distributioner och allt kring informationssäkerhet.
Prenumerera på vårt nyhetsbrev
Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!
Klicka här för att prenumerera