h2: Lempiväri: violetti

Oma host kokoonpanoni:

Komponentti Kuvaus Lisätiedot
Emolevy MSI B550-A PRO ATX, AM4
Prosessori AMD Ryzen 9 5900X 12-Core 3.70 GHz
RAM G.Skill Ripjaws V 32GB (4x8GB) DDR4 3200MHz
Näytönohjain Sapphire PULSE AMD Radeon RX 7900 GRE 16GB
Kovalevy Kingston 1TB A2000 NVMe PCIe SSD M.2
Kovalevy Crucial 512GB MX100 SSD
Kovalevy Crucial 256GB MX100 SSD
Virtalähde Asus 750W TUF ATX 80 Plus
Kotelo Phanteks Enthoo Pro Full Tower

Käyttöjärjestelmä: Windows 11 Pro 25H2

Oracle VirtualBox 7.1.12

kali-linux-2025.3-virtualbox-amd64

https://terokarvinen.com/verkkoon-tunkeutuminen-ja-tiedustelu/#h2-lempivari-violetti

x) Lue ja vastaa lyhyesti kysymyksiin. Tässä alakohdassa x ei tällä kertaa tarvitse lukea artikkeleita kokonaan, ei tarvitse tiivistää niitä, eikä tehdä testejä koneella.

- Selitä tuskan pyramidin idea 1-2 virkkeellä. Bianco 2013: Pyramid of Pain. (Katso eritoten pyramidin kuvaa.)

Tuskan pyramidi kertoo visuaalisesti:

- Selitä timanttimallin (Diamond Model) idea 1-2 virkkeellä. Tekijä esittelee sen aika juhlallisesti, voit myös etsiä yksinkertaisempia artikkeleita hakukoneella tai kelata suoraan timantin kuvaan. Caltagirone et al 2013: Diamond Model

Tässä webasha.com sivulla oli aika hyvin selitetty asiat selkokielellä.

a) Apache log. Asenna Apache-weppipalvelin paikalliselle virtuaalikoneellesi. Surffaa palvelimellesi salaamattomalla HTTP-yhteydellä, http://localhost . Etsi omaa sivulataustasi vastaava lokirivi. Analysoi yksi tällainen lokirivi, eli selitä sen kaikki kohdat. (Jos Apache ei ole kovin tuttu, voit tätä tehtävää varten vain asentaa sen ja testata oletusweppisivulla. Eli ei tarvitse tehdä omia kotisvuja tms.)

Vanhasta muistista ja osin tämän tehtävän Karvisen (2025) ohjeesta asensin apache2 web-palvelimen ja käynnistin sen, jonka jälkeen menin seuraamaan palvelimen lokia ja navigoin localhost osoitteeseen selaimella.

sudo apt-get update
sudo apt-get install apache2
sudo systemctl start apache2
/var/log/apache2/
pwd
sudo tail -F /var/log/apache2/access.log

Lokin lukemiseen löysin hyvän oloisen lähteen Sumo logic, sekä tietenkin Apachen oma lokien ohje.

201

b) Nmapped. Porttiskannaa oma weppipalvelimesi käyttäen localhost-osoitetta ja ‘nmap -A’ päällä. Selitä tulokset. (Pelkkä http-portti 80/tcp riittää)

Irroitan varmuuden vuoksi viruaalisen kaaplelin virtuaalikoneesta tehtävän ajaksi. Network settings -> Cable connected-kohdasta täppä pois.

Nmap:n käyttö on minulle uutta, joten otan nmap.org:n port scanning basics ohjeet käyttöön. Ohjelman sisäisessä ohjeessa tosin kerrotaan jo, että “-A” = Enable OS detection.

Kokeilen skannata localhost osoitetta:

nmap -v -A 127.0.0.1 #Ohjeessa oli "-v" = "increase verbosity level"

202

Tulkitsen tuloksia tätä hyödyntäen: https://www.geeksforgeeks.org/ethical-hacking/nmap-scanning-results/. Ei ehkä ihan täydellinen ohje, neuvotaan filteröimään portit 1-1000 komennolla “sudo nmap -sS -Pn 1-1000 10.143.85.1”, mutta kuvassa näkyy, “Failed to resolve “1-1000”. Nmap.org:sta löytyy yksityiskohtaisempia tietoja https://nmap.org/book/osdetect-usage.html.

c) Skriptit. Mitkä skriptit olivat automaattisesti päällä, kun käytit “-A” parametria? (Näkyy avoimien porttinumeroiden alta, http-blah, http-blöh…).

d) Jäljet lokissa. Etsi weppipalvelimen lokeista jäljet porttiskannauksesta (NSE eli Nmap Scripting Engine -skripteistä skannauksessa). Löydätkö sanan “nmap” isolla tai pienellä? Selitä osumat. Millaisilla hauilla tai säännöillä voisit tunnistaa porttiskannauksen jostain muusta lokista, jos se on niin laaja, että et pysty lukemaan itse kaikkia rivejä?

Tarkastellaan Apachen lokeja.

cd /var/log/apache2/
sudo tail -F /var/log/apache2/access.log

203

Monessa kohdassa näkyy “Nmap Scripting Engine;…”.

Siirryin tutkimaan laajemmin lokitiedostoja.

cd /var
grep -ir "nmap" #tähän oli vinkki Karvisen tehtävänannon lopussa, *-ir* etsii kaikista alihakemistoista. 

Tuloksia tuli aivan liikaa, “nmap” kaappasi kaikki “zenmap” yms. sanat. Pitää muuttaa hakua tarkemmaksi.

sudo grep -ir "Nmap Scripting"

Tällä tulos on jo paljon järkevämpi. Löytyy ainoastaan rivit missä on “Nmap Scripting”. Kaikki osumat ovat Apachen acces.log:sta.

204

e) Wire sharking. Sieppaa verkkoliikenne porttiskannatessa Wiresharkilla. Huomaa, että localhost käyttää “Loopback adapter” eli “lo”. Tallenna pcap. Etsi kohdat, joilla on sana “nmap” ja kommentoi niitä. Jokaisen paketin jokaista kohtaa ei tarvitse analysoida, yleisempi tarkastelu riittää.

Wireshark päälle:

wireshark

Toiseen consoleen nmap valmiiksi:

nmap -v -A 127.0.0.1

Wiresharkista tallennus päälle ja nmap ajamaan. Tallensin kaappauksen tiedostoon “nmaptesti30102025.pcap”. Karvisen ohjeen mukaan laitoin filteriksi frame contains “nmap”. Kuvassa kaikki framet, joista löytyy sana “nmap”:

205

f) Net grep. Sieppaa verkkoliikenne ‘ngrep’ komennolla ja näytä kohdat, joissa on sana “nmap”.

Avasin kaksi consolea, Karvisen ohjeilla:

#Ensimmäiseen valmiiksi
sudo ngrep -d lo -i nmap
#Toisella ajoin:
sudo nmap -A localhost

206

g) Agentti. Vaihda nmap:n user-agent niin, että se näyttää tavalliselta weppiselaimelta.

Kokeilen Bob Van Der Staak:n komentoa user agentin vaihtamiseen, muokaten komennon haluamanilaiseksi. Ajan komennon.

nmap -v --script-args http.useragent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3" -A 127.0.0.1

h) Pienemmät jäljet. Porttiskannaa weppipalvelimesi uudelleen localhost-osoitteella. Tarkastele sekä Apachen lokia että siepattua verkkoliikennettä. Mikä on muuttunut, kun vaihdoit user-agent:n? Löytyykö lokista edelleen tekstijono “nmap”?

Äskeisessä tehtävässä minulla oli vielä ngrep tarkkailemassa liikennettä. Yksi rivi tuli vielä, mistä löytyy “nmap”.

T 127.0.0.1:50152 -> 127.0.0.1:80 [AP] #4447
  GET /nmaplowercheck1761827013 HTTP/1.1..User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (K
  HTML..Host: localhost..Connection: close....

207

i) Hieman vaikeampi: LoWeR ChEcK. Poista skritiskannauksesta viimeinenkin “nmap” -teksti. Etsi löytämääsi tekstiä /usr/share/nmap -hakemistosta ja korvaa se toisella. Tee porttiskannaus ja tarkista, että “nmap” ei näy isolla eikä pienellä kirjoitettuna Apachen lokissa eikä siepatussa verkkoliikenteessä. (Tässä tehtävässä voit muokata suoraan lua-skriptejä /usr/share/nmap alta, ‘sudoedit’. Muokatun version paketoiminen siis rajataan ulos tehtävästä.)

Navigoin kansioon ja etsin ngrepin perusteella löytämän tekstin avulla tiedostoista jäljellä olevan “nmap”:n.

cd /usr/share/nmap
grep -ir "nmaplower"

208

Tästä viisastuneena menen kansioon ja editoin tiedostoa.

cd nselib
sudoedit http.lua

Ctrl+f:llä löysin rivin, joka tuli vastaan aiemmin ngrep:ssä. Muokkaan “nmaplowercheck” -> “HelloWorld” ja tallennan. Kokeilen vielä ajaa nmap:n ja tarkkailen liikennettä. (Löysin tiedostosta myös user-agent rivin, mutta en koskenut siihen.)

209

Apache lokissa ei tietenkään näy “nmap”, ja ngrep näyttää pelkkää risuaitaa. Tehtävä suoritettu.

Lähteet

https://terokarvinen.com/verkkoon-tunkeutuminen-ja-tiedustelu/#h2-lempivari-violetti

https://detect-respond.blogspot.com/2013/03/the-pyramid-of-pain.html

https://duckduckgo.com/?t=ftsa&q=diamond+model+attacker+capability+infrastructure&ia=web

https://www.threatintel.academy/wp-content/uploads/2020/07/diamond-model.pdf

https://www.webasha.com/blog/what-is-the-diamond-model-in-cybersecurity-a-beginner-friendly-guide-with-real-world-examples-and-analysis#sec4

https://www.sumologic.com/blog/apache-access-log

https://httpd.apache.org/docs/2.4/logs.html

https://www.geeksforgeeks.org/ethical-hacking/nmap-scanning-results/

https://nmap.org/book/osdetect-usage.html

https://nmap.org/nsedoc/scripts/http-title.html

https://nmap.org/nsedoc/scripts/http-methods.html

https://nmap.org/nsedoc/scripts/http-server-header.html

https://docs.nextcloud.com/server/20/developer_manual/client_apis/WebDAV/basic.html

https://infosecwriteups.com/evading-detection-while-using-nmap-69633df091f3


Tätä dokumenttia saa kopioida ja muokata GNU General Public License (versio 2 tai uudempi) mukaisesti. http://www.gnu.org/licenses/gpl.html

Pohjana Tero Karvinen & Lari-Iso Anttila 2025: Verkkoon tunkeutuminen ja tiedustelu

Kirjoittanut: Santeri Vauramo 2025

← Back