Seuraavaksi käydään läpi esimerkki kuinka haavoittuvuuksia voidaan tunnistaa skannatuista kohteista. Suoritetaan ensin samat kartoitusvaiheet kuin aiemmassa moduulissa. Käynnistä labra ja tee perässä.
Kartoitusvaihe
Seuraava vaihe on samanlainen kuin edellisessä moduulissa ja koostuu seuraavista komennoista.
# Tietokannan valmistelu
service postgresql start
msfdb init
# Metasploitin käynnistys
msfconsole
# Skannaus (käytämme -p- joka kertoo että skannataan kaikki portit)
db_nmap -p- <IP>
db_nmap -A -p- <IP>
Näiden jälkeen voimme tarkistaa, että meillä on näkyvyys kohteen avoimista porteista ja niissä kuuntelevista palveluista.
msf6 > services
Services
========
host port proto name state info
---- ---- ----- ---- ----- ----
10.0.2.51 22 tcp ssh open OpenSSH 4.7p1 Debian 8ubuntu1 protocol 2.0
10.0.2.51 25 tcp smtp open Postfix smtpd
10.0.2.51 53 tcp tcpwrapped open
10.0.2.51 111 tcp rpcbind open 2 RPC #100000
10.0.2.51 139 tcp netbios-ssn open Samba smbd 3.X - 4.X workgroup: WORKGROUP
10.0.2.51 445 tcp 0����)��u open Samba smbd 3.0.20-Debian workgroup: WORKGROUP
10.0.2.51 2121 tcp ftp open ProFTPD 1.3.1
10.0.2.51 3306 tcp mysql open MySQL 5.0.51a-3ubuntu5
10.0.2.51 3632 tcp distccd open distccd v1 (GNU) 4.2.4 (Ubuntu 4.2.4-1ubuntu4)
Haavoittuvuuksien tunnistaminen
Nyt voimme alkaa tunnistamaan potentiaalisia haavoittuvuuksia. Tähän prosessiin kuuluu usein julkisten lähteiden käyttäminen, kuten Exploit-DB sivusto. Ideana on verrata havaittuja palveluita tunnettuihin haavoittuvuuksiin ja etsiä korrelaatioita näiden väliltä. Yksinkertaisesti sanottuna, vertaamme skannattuja palveluita ja näiden versioita tiedossa oleviin haavoittuvuuksiin. Tähän on kuitenkin myös automaattisia lähestymistapoja kuten nmapin haavoittuvuus-skriptit, jotka etsivät kyseisistä palveluista tiedossa olevia haavoittuvuuksia. Näiden tarkkuus vaihtelee, mutta on hyvä tapa aloittaa haavoittuvuuksien kartoitus.
Suoritetaan haavoittuvuus-skannaus avoimeen porttiin 3632, jossa on distcc palvelu.
db_nmap -p3632 --script vuln <IP>
Tulosteesta näemme, että kyseisestä palvelusta löytyy vakava julkinen haavoittuvuus, joka mahdollistaa komentojen suorittamisen hyökkääjän toimesta.
[*] Nmap: Starting Nmap 7.94 ( https://nmap.org ) at 2023-10-08 15:24 UTC
[*] Nmap: Nmap scan report for 10.0.2.51
[*] Nmap: Host is up (0.00018s latency).
[*] Nmap: PORT STATE SERVICE
[*] Nmap: 3632/tcp open distccd
[*] Nmap: | distcc-cve2004-2687:
[*] Nmap: | VULNERABLE:
[*] Nmap: | distcc Daemon Command Execution
[*] Nmap: | State: VULNERABLE (Exploitable)
[*] Nmap: | IDs: CVE:CVE-2004-2687
[*] Nmap: | Risk factor: High CVSSv2: 9.3 (HIGH) (AV:N/AC:M/Au:N/C:C/I:C/A:C)
[*] Nmap: | Allows executing of arbitrary commands on systems running distccd 3.1 and
[*] Nmap: | earlier. The vulnerability is the consequence of weak service configuration.
[*] Nmap: |
[*] Nmap: | Disclosure date: 2002-02-01
[*] Nmap: | Extra information:
[*] Nmap: |
[*] Nmap: | uid=1(daemon) gid=1(daemon) groups=1(daemon)
[*] Nmap: |
[*] Nmap: | References:
[*] Nmap: | https://distcc.github.io/security.html
[*] Nmap: | https://nvd.nist.gov/vuln/detail/CVE-2004-2687
[*] Nmap: |_ https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2004-2687
[*] Nmap: Nmap done: 1 IP address (1 host up) scanned in 10.36 seconds
Voimme etsiä Metasploitista valmiita hyökkäysmoduuleja (exploitteja), joilla hyväksikäyttää haavoittuvuutta.
msf6 > search exploit distcc
Matching Modules
================
# Name Disclosure Date Rank Check Description
- ---- --------------- ---- ----- -----------
0 exploit/unix/misc/distcc_exec 2002-02-01 excellent Yes DistCC Daemon Command Execution
Voimme myös lukea lisää tietoja kyseisestä moduulista info komennolla.
msf6 > info exploit/unix/misc/distcc_exec
Name: DistCC Daemon Command Execution
Module: exploit/unix/misc/distcc_exec
Platform: Unix
Arch: cmd
Privileged: No
License: Metasploit Framework License (BSD)
Rank: Excellent
Disclosed: 2002-02-01
Provided by:
[TEHTÄVÄ]
Available targets:
Id Name
-- ----
=> 0 Automatic Target
Check supported:
Yes
Basic options:
Name Current Setting Required Description
---- --------------- -------- -----------
RHOSTS yes The target host(s), see https://docs.metasploit.com/docs/using-metasploit/basics/using-metasploit.html
RPORT 3632 yes The target port (TCP)
Payload information:
Space: 1024
Description:
This module uses a documented security weakness to execute
arbitrary commands on any system running distccd.
References:
https://nvd.nist.gov/vuln/detail/CVE-2004-2687
OSVDB (13378)
http://distcc.samba.org/security.html
View the full module info with the info -d command.
Voit kokeilla hyväksikäyttää haavoittuvuutta Metasploitin avulla ja katsoa saatko kohde koneen hallintaasi. On hyvä muistaa, ettei jokainen haavoittuvuus aina löydy valmiina Metasploitista eikä automaattiset lähestymistavat ole täydellisiä. Jos haluaa varminta tietoa, on järkevää ottaa Google käteen ja lähteä itse etsimään tietoa mahdollisista haavoittuvuuksista, mitä palveluissa voi olla. Tämä pitää varsinkin paikkansa, jos kyse on vähemmän tunnetuista palveluista tai todella uusista haavoittuvuuksista. Käymme myöhemmin kurssilla läpi, kuinka lisätä Metasploittiin uusia moduuleja, joita ei siinä oletuksena ole.
Kuka on rakentanut kyseisen distcc moduulin? - Näkyy provided kentässä.


Valmis ryhtymään eettiseksi hakkeriksi?
Aloita jo tänään.
Hakatemian jäsenenä saat rajoittamattoman pääsyn Hakatemian moduuleihin, harjoituksiin ja työkaluihin, sekä pääset discord-kanavalle jossa voit pyytää apua sekä ohjaajilta että muilta Hakatemian jäseniltä.