Penetration testing course 2023
Tunkeutumistestaus ict4tn027-3009
Learn to hack computers to protect your own. In the course, you will break into target computers.
Excellent feedback, 4.9 out of 5.
Course name and code | Tunkeutumistestaus ict4tn027-3009 |
Timing | 2023 period 4 late spring, w12-w20 |
Credits | 5 cr |
Classes | Mon 08:15 - 13:45, online, mandatory participation |
Max students | 30 |
Language | Finnish (+reading material in English) |
Remote | Yes, fully remote |
Feedback | 4.9 / 5 Excellent feedback |
Services | Moodle: Tunkeutumistestaus, Jitsi, Laksu |
First class | 2023-03-27 w13 Mon 08:15, Tero emailed video conference link |
Use of penetration testing techniques requires legal and ethical considerations. To safely use these tools, tactics and procedures, you might need to obtain contracts and permissions; and posses adequate technical skills. Check your local laws.
Teaching is in Finnish, so the rest of this page will be in Finnish.
Tämä on eettinen hakkerointi -kurssi. Opit, miten murtaudutaan tietokoneille, jotta voisit suojata omat ja toimeksiantajan järjestelmät. Nämä tekniikat, ohjelmat ja taktiikat ovat luvallisia vain tietyissä tilanteissa. Usein pitää hankkia lupia ja tehdä sopimuksia. Lisäksi näiden tekniikoiden turvalliseen käyttöön tarvitaan teknistä taitoa. Perehdy itse paikallisiin lakeihin.
Oppimistavoitteet
Opintojakson suoritettuaan opiskelija
- Tuntee tunkeutumistestauksen prosessin pääpiirteissään
- Tietää, että tunkeutumistestaukselle on lailliset ja eettiset rajat
- Osaa kartoittaa kohdejärjestelmän haavoittuvuuksia
- Osaa hyödyntää valmiita hyökkäyksiä (exploit) ja liittää niihin hyötykuorman käyttäen kurssille valittua työkalua
- Osaa soveltaa tavallisimpia hyökkäyksiä weppisovelluksia vastaan, kun kohdeohjelmistot ovat helppoja ja haavoittuvia.
- Osaa hankkia tunkeutumistestauksessa tarvittavia ohjelmistoja
Kurssilta ei saa mukaansa ilmaista pakettia nollapäivähaavoittuvuuksia, eikä kurssi anna mitään erityisoikeuksia eikä ammattinimikkeitä.
Aikataulu
- 2023-03-27 w13 ma Alkutesti. Pentest yleiskuva. Kurssin sääntöjen hyväksyntä ja alkutesti. Yleiskuva. Kohteiden rajaus (scope), lailliset rajat, etiikka, nuhteeton tausta. Hyökkäykseen sopivien työkalujen hankinta.
- 2023-04-03 w14 ma Kybertappoketju. Valmiiden hyökkäysten käyttö, Metasploit. Harjoitusmaalien hankkiminen.. Hyökkäyksen suunnittelu ja toteutus kybertappoketjun (Hutchins et al. cyber kill chain) avulla. Metasploit. Porttiskannausten tallentaminen tietokantaan. Murtotekniikan ja etähallintaohjelmiston yhdistäminen. Harjoitushyökkäyksiä. Esimerkkihyökkäys ja vilkaisu työkaluihin (nmap, nc, metasploit search, use, set RHOSTS, exploit).
- 2023-04-10 w15 ma Toinen pääsiäispäivä, ei opetusta.
- 2023-04-17 w16 ma Hyökkäykset weppiin: useita tekniikoita.. WebGoat. OWASP 10 A2 broken authentication, A3 sensitive data exposure, A7 XSS, 2013A8 CSRF. Antti Halonen: Flipper Zero.
- 2023-04-24 w17 ma Vierailija: Riku Juurikko: Social Engineering (English) (9-11). Välimiesproxyt. Mitmproxy, OWASP ZAP. TLS-salauksen purkaminen omalla CA-sertifikaatilla.
- 2023-05-01 w18 ma Vappupäivä, ei opetusta.
- 2023-05-08 w19 ma Tiedustelu. “Mittaa kahdesti, leikkaa kerran”. Passiivinen ja aktiivinen tiedustelu. Porttiskannus, verkkojen skannaus ja niiden oheistekniikat. KKO 2003:36. Nmap-porttiskanneri.
- 2023-05-15 w20 ma Päätöskerta. Arvioitava laboratorioharjoitus, CTF.
Tämä on edistynyt kurssi, joten tuntien aiheisiin voi tulla muutoksia kurssin edetessä.
Kertausmateriaalia
Tämä materiaali on vapaaehtoista, jos osaat ne jo. Lähteet ovat esimerkkejä, voit osata/opetella nuo asiat mistä vain haluat.
- TCP/IP-pino: Wikipedia: Internet protocol suite
- Linuxin komentokehote: Command Line Basics Revisited (ja Linuxin asennus Install Debian on VirtualBox)
- Tietokantojen alkeet (millä vain alustalla): PostgreSQL Install and One Table Database - SQL CRUD tutorial for Ubuntu
- Ohjelmoinnin alkeet (millä vain kielellä): FreeCodeCamp.org: Javascript Algorithms And Data Structures Certification: Basic JavaScript: Introduction to JavaScript
Luettavaa ja linkkejä
€ Maksulliset aineistot saattavat näkyä ilmaiseksi Haaga-Helian tunnuksilla kirjaston kautta. Haaga-Helialla on käyttöoikeus O'Reilly Learning -kirjoihin (ent. Safari).
Työkaluja kurssille
- Install Debian on VirtualBox
- Remote Learning Tools for Tero's Courses
- Kali Linux. Uusi levykuva kali-linux-2021.1-live-amd64.iso (vanha levykuva kali-linux-2020.3-live-amd64.iso). Kun linkki menee vanhaksi, etsi Kalin kotisivulta tuorein amd64-arkkitehtuurin live-tikun iso-kuva.
L2 weppihyökkäyksiä - tukee läksyä h2
OWASP 10 2017 (pdf), erityisesti ne hyökkäykset, joita aiot kohta tehdä eli A2 Broken Authentication, A3 Sensitive Data Exposure, A7 Cross Site Scripting; sekä viime kerralla harjoiteltu A1 Injection.
€ Santos et al 2018: Hacking Web Applications The Art of Hacking Series LiveLessons (video): Security Penetration Testing for Today's DevOps and Cloud Environments: 6.3 Understanding SQL Injection ja 6.4 Exploiting SQL Injection Vulnerabilities sekä Lesson 5: Authentication and Session Management Vulnerabilities
€ Percival & Samancioglu 2020: The Complete Ethical Hacking Course (video): Chapter 21: Cross Site Scripting
Yleiskuva, harjoitusmaaleja, web
- MITRE ATT&CK
- Darknet Diaries . Podcastien kuunteluun kännykällä AntennaPod löytyy F-Droidista
- MitmProxy on Kali and Xubuntu
- Install Webgoat 8 - Learn Web Pentesting. (It's also possible to install old version 7 of WebGoat with Docker).
- OWASP 10 2017 (pdf). Tällä hetkellä 2021-02-02 uusin versio.
Aktiivinen tiedustelu. HackTheBox.
€ Santos et al: The Art of Hacking (Video Collection): [..] 4.3 Surveying Essential Tools for Active Reconnaissance: Port Scanning and Web Service Review
man nmap (laaja, silmäily riittää)
Kokonaisia blogeja ja videokanavia, vilkaise, ei tarvitse katsoa 200 h videota:
- https://tools.kali.org/tools-listing
- 0xdf https://0xdf.gitlab.io/
- ippsec https://www.youtube.com/channel/UCa6eh7gCkpPo5XXUDfygQQA/videos
- John Hammond https://www.youtube.com/user/RootOfTheNull/videos?sort=p
- Youtube-videoiden katseluun kännykällä NewPipe F-Droidista. Youtube-videoiden nopeuden säätöön codebicycle Video Speed Controller addon Firefoxille.
Passwords, Learning to Learn tools
- infosecn1nja 2020: Red-Teaming-Toolkit
- Taylor et al 2018: The Art of Hacking: Hacking User Credentials €
Web Fuzzing, Second to Last Words
- Hoikkala "joohoi" 2020: ffuf - Fast web fuzzer written in Go
- Hoikkala "joohoi" 2020: Still Fuzzing Faster (U fool). In HelSec Virtual Meetup #1.
- Miettinen 2020: iPhone BFU Acquisition and Analysis. In HelSec Virtual Meetup #1.
Metasploit
€ Jaswal 2020: Mastering Metasploit - 4ed: Chapter 1: Approaching a Penetration Test Using Metasploit (kohdasta "Conducting a penetration test with Metasploit" luvun loppuun)
Karvinen 2018: Install Metasploitable 3 – Vulnerable Target Computer (Article uses rapid7/metasploitable3-ub1404 , see also "rapid7/metasploitable3-win2k8")
Anna palautetta
Palaute on todella tärkeä tapa kehittää kurssia – kiitos kommenteista jo etukäteen. Palaute kahteen kanavaan
1) Vapaamuotoinen palaute kommenttina tämän kurssisivun perään
Vapaamuotoinen palaute kommenttina tämän kurssisivun perään
Vapaamuotoiseen palautteeseen saa kirjoittaa mitä vain, eikä kysymyksiä tarvitse toistaa. Mutta tässä vinkiksi:
- Opitko jotakin – eli osaatko nyt sellaista, mitä et osannut ennen kurssia?
- Teitkö jotain ensimmäistä kertaa? Hyökkäsit weppiin, käytit jotain työkalua, skannasit kokonaisen verkon; käytit jotain kieltä, tekniikkaa tai työkalua?
- Oliko opittu hyödyllistä? Luuletko, että sille on käyttöä esim. tulevaisuudessa töissä tai kotona?
- Mitä mieltä olit läksyistä? Luku/video/podcast -materiaalista? Hands-on tehtävistä?
- Miten voisin parantaa kurssia?
- Viihdyitkö kurssilla?
- Suosittelisitko kurssia? Kenelle kurssi sopisi? Koulutoverille tai kollegalle?
2) Numeerinen palaute Haaga-Helian palautejärjestelmään MyNetissa
Numeerinen palaute Haaga-Helian palautejärjestelmään MyNetissa
Numeerisen palautteen avulla mm. verrataan Haaga-Helian kursseja toisiinsa. On tärkeää saada jokaiselta palaute, jotta tulos on tilastollisesti merkitsevä.
Numeeriset: Asteikko 1-välttävä (huonoin) ... 5-kiitettävä (paras)
- Oma aktiivisuutesi opiskelussa 1-5
- Osaamistavoitteiden saavuttaminen 1-5
- Työskentelytavat tukivat oppimista 1-5
- Opiskeluympäristö tuki oppimista 1-5
- Hyödyllisyys työelämään 1-5
Avoimet kysymykset (näihin voi myös kopioida samat vastaukset jotka kirjoitit aiemmin)
- Mitkä asiat edistivät oppimistasi?
- Miten kehittäisit toteutusta / toteutuskokonaisuutta, jotta osaamistavoitteet saavutettaisiin paremmin?
Kokonaisarviosi toteutuksesta / toteutuskokonaisuudesta 1-5
Suosittelisitko 1 - 10 (1 en varmasti, 10 aion varmasti suositella tai olen jo suositellut)
Kiitos palautteesta ja jännittävästä kurssista! Seuraavilla kursseilla nähdään.
Läksyt
Palauta linkki Laksuun 24 h ennen seuraavaa lukujärjestykseen merkittyä kurssivarausta. Tehtävät ovat pakollinen ja tärkeä osa kurssia.
Läksyt ovat virallisia vasta, kun ne on vahvistettu (yleensä oppitunnin päätteeksi). Tämä on edistynyt kurssi, joten ohjelmaan tulee yleensä muutoksia kurssin aikana. Osa tehtävistä edellyttää huolellisuuden lisäksi tietoja ja taitoja työkalujen käytöstä, jottei synny vahinkoja - tee vasta, kun tiedät oikeat työtavat.
Läksyt käydään läpi seuraavalla tapaamiskerralla, ratkotaan yhdessä ongelmia ja annetaan suullista palautetta. Arvosana kotitehtäväpaketista tulee vasta kurssin lopuksi, mutta tehtävät tulee silti palauttaa aina vuorokautta ennen seuraavia tunteja. Julkaiseminen on vapaaehtoista, mutta erittäin suositeltavaa. Jos et jostain syystä uskalla tai muuten halua julkaista, voit laittaa työn weppisivulle salasanan taakse (kaikille kotitehtäville sama salasana) ja jakaa tämän salasanan kurssilaisten kanssa. Jos tuntien yhteydessä järjestetään testejä läksyjen aiheista, niiden pisteet sisältyvät arvostelun kohtaan läksyt.
Läksyt pitää tehdä tietokoneella kokeilemalla ja raportoida tapahtumien kulku, ellei kyseisessä alakohdassa erikseen muuta lue. Raportti tulee kirjoittaa samalla, kun työskentelee.
Tehtäviä saa aloittaa vasta, kun on hyväksynyt kurssin säännöt.
h0 Sieppari ruispellossa
Sieppaa ja analysoi verkkoliikennettä. Palauta Laksuun (10:05 mennessä) ja arvioi sitten kaksi. Nähdään taas 10:15.
Vinkkejä
- Mitä teit / minkä komennon annoit
- Mitä tapahtui / mitä tuli vastaukseksi
- Analyysi edellyttää analyysia. Selitä omin sanoin, mistä on kyse ja mitä komentojen tulosteet / lokit / siepatun liikenteen osat tarkoittavat.
- Sieppaa vain omaa liikennettäsi
- Tehtäviä saa aloittaa vasta, kun on hyväksynyt kurssin säännöt.
h1 OmaLabra
Tehtäviä saa aloittaa vasta, kun on hyväksynyt kurssin säännöt. Koneet on eristettävä Internetistä hyökkäysten harjoittelun ajaksi.
- x) Lue/katso/kuuntele ja tiivistä. (Tässä x-alakohdassa ei tarvitse tehdä testejä tietokoneella, vain lukeminen tai kuunteleminen ja tiivistelmä riittää. Tiivistämiseen riittää muutama ranskalainen viiva.)
- Darknet Diaries tai Herrasmieshakkerit podcast, yksi vapaavalintainen jakso jommasta kummasta. Voi kuunnella myös lenkillä, pyykiä viikatessa tms. Siisti koti / hyvä kunto kaupan päälle.
- € Santos et al: The Art of Hacking (Video Collection): [..] 4.3 Surveying Essential Tools for Active Reconnaissance. Sisältää porttiskannauksen. 5 videota, yhteensä noin 20 min.
- a) Asenna Kali virtuaalikoneeseen
- b) Asenna Metasploitable 2 virtuaalikoneeseen
- c) Tee koneille virtuaaliverkko, jossa
- Kali saa yhteyden Internettiin, mutta sen voi laittaa pois päältä
- Kalin ja Metasploitablen välillä on host-only network, niin että porttiskannatessa ym. koneet on eristetty intenetistä, mutta ne saavat yhteyden toisiinsa
- d) Etsi Metasploitable porttiskannaamalla (db_nmap -sn). Tarkista selaimella, että löysit oikean IP:n - Metasploitablen etusivulla lukee Metasploitable.
- e) Porttiskannaa Metasploitable huolellisesti (db_nmap -A)
- f) Murtaudu Metasploitablen VsFtpd-palveluun Metasploitilla (search vsftpd, use 0, set RHOSTS - varmista osoite huolella, exploit, id)
- n) Vapaaehtoinen: Murtaudu johonkin toiseen Metasploitablen palveluun.
- m) Vapaaehtoinen, vaikea: Asenna ja korkkaa Metasploitable 3. Karvinen 2018: Install Metasploitable 3 – Vulnerable Target Computer
Vinkkejä
- Podcastien kuunteluun kännykällä AntennaPod löytyy F-Droidista ja Google Playsta.
- Lue Valkamon artikkeli ennenkuin ryhdyt asentamaan virtuaalikoneita
- Valkamo 2022: Hacking into a Target Using Metasploit: Metasploitable
- Halutessasi voit käyttää myös muita virtualisointiympäristöjä kuin VirtualBoxia, esim Macilla UTM. Tämä edellyttää toki omaa soveltamista.
- Virtuaalikoneiisin voi asentaa uusia verkkokortteja vain, kun ne ovat sammuksissa
- Suosittelen Kaliin 4 GB muistia
- OffSec Ltd 2023: Prebuilt Virtual Machines
- Jokin tehtävä voi olla vaikea. Tee ja raportoi silloin kaikki mitä osaat. Listaa lähteet, joista hait ohjeita. Onko jotain vielä kokeiltavana? Mitä haasteita on vielä ratkaisun tiellä? Mitä virheimoituksia tai vastaavia tulee? Voit myös katsoa wepistä esimerkkiratkaisun - muista viitata lähteeseen ja merkitä, missä kohdassa katsoit ratkaisua. Ja katsotaan yhdessä tunnilla loput.
- Murtautumiseen Metasploitable 2:n löytyy esimerkkiratkaisuja Metasploitable 2 Exploitability Guide.
- Muista laittaa lähdeviitteet.
- O'Reilly Learning videot ja kirjat pääset lukemaan ilmaiseksi HH tunnuksilla, kun kirjaudut kirjaston kautta.
- VirtualBoxissa host-only-networking on kätevä. Voit laittaa Kaliin kaksi verkkokorttia, toinen NAT:lla Internetiin ja toinen host-only-network:n. Verkkoasetusten advanced-kohdasta voi vetää virtuaalisen verkkokaapelin irti ja kiinni, vaikka kone on päällä.
- Jos Metasploitable 2 -maali ei löydy omasta verkosta (arp, arpwatch, netdiscover, nmap -sn...), voit kirjatua sisään (msfadmin:msfadmin) ja 'ifconfig' tai 'ip addr'. Metasploitable 2:n kannattaa laittaa vain yksi "Host only networking" verkkokortti, se ei toimi itsestään kahden verkkokortin kanssa.
- Löydätkö hyökkäyksen, joka tukee meterpreter-payloadia? Onnistutko ylentämään meterpreteriin (sessions -u 1)?
- Kun olet irroittanut Internetin ja valmiina skannaamaan, varmista. Kokeile, että Google tai DuckDuckGo ei aukea selaimella, että et voi pingata esim 8.8.8.8. Kokeile, että maalikoneesi vastaa pingiin. Jos maalikoneella on weppipalvelin, kannattaa katsoa selaimella, että sieltä aukeaa olettamasi sivu.
- Tietoja verkosta
- ip a; ifconfig
- ip route
- ipcalc 10.0.0.1/24
- ping 8.8.8.8
- Metaspoit (sudo msfdb run) on hyvä työkalu tunkeutumiseen.
- db_status, workspace, db_nmap, hosts, services, setg RHOSTS 127.0.0.1, exploit, ctrl-Z, sessions
- sudo nmap -sn 127.0.0.1-255 -oA sweep; sudo nmap -A -p 127.0.0.1 -oA one
- Ole huolellinen, irrota harjoituskoneet Internetistä skannausten ja hyökkäysten ajaksi. Mitään ulkopuolisia koneita ei saa skannata eikä mihinkään ulkopuolisiin koneisiin saa tunkeutua.
h2 Totally Legit Sertificate
Lisää aikaa! Pääsiäisenä ei ole oppituntia, ja palautus on vasta 24 h ennen seuraavan tapaamiskerran alkua.
- x) Lue ja tiivistä. (Tässä x-alakohdassa ei tarvitse tehdä testejä tietokoneella, vain lukeminen tai kuunteleminen ja tiivistelmä riittää. Tiivistämiseen riittää muutama ranskalainen viiva.)
- PortSwigger: SQL injection
- PortSwigger: Cross-site scripting
- a) ZAP! Asenna ZAP välimiesproxy ja näytä, että pystyt sieppaamaan liikennettä selaimesta.
- b) Totally Legit Sertificate. Asenna ZAP:n generoima CA-sertifikaatti selaimeen ja osoita testillä, että pystyt sieppaamaan HTTPS-salakirjoitettua liikennettä.
- c) Intercept. Pysäytä hakupyyntö, muokkaa sitä ja päästä se palvelimelle.
- d) Vuohi. Asenna WebGoat ja kokeile, että pääset kirjautumaan sisään.
- e) Vauvavuohi. Ratkaise WebGoatista tehtävät "HTTP Basics" ja "Developer tools". Katso vinkit alta.
- f) SELECT * FROM student. Ratkaise SQLZoo:sta: 0 SELECT basics, 2 SELECT from World kohdat 1-5.
- g) Ratkaise WebGoatista*:
- A1 Injection (intro)
- A2 Broken authentication:
- Authentication bypasses: 2 2FA Password Reset
- A3 Sensitive data exposure
- Insecure Login: 2 Let's try
- A7 Cross Site Scripting (XSS): Cross site scripting
- 2 What is XSS?
- 7 Try It! Reflected XSS
- A8:2013 Request Forgeries:
- Cross-Site Request Forgeries
- 3 "Basic Get CSRF Exercise"
- 4 "Post a review on someone else’s behalf".
- Cross-Site Request Forgeries
- h) Vapaaehtoinen bonus: ratkaise Vulhubista valitsemasi kone.
* Oletko jo ratkonut Webgoatin? Voit korkata sen tilalta koneen tai pari HackTheBox.eu:sta tai Vulnhubista.
Vinkit:
- Murtautumaan oppii murtautumalla.
- Kannattaa treenata päivittäin.
- Jos käytät ulkopuolisia harjoitusmaaleja (esim HackTheBox.eu)
- Ota säännöt (rules tms) kuvakaappauksena talteen
- Jos sinulla on VPN-yhteys kohdeverkkoon, testaa ennen aloittamista, että paketteja ei vuoda oikeaan Internetiin
- Julkaise ratkaisuja vain sellaisiin tehtäviin, joiden tekijät ovat antaneet luvan julkaista ratkaisuja (esim HackTheBox eläköityneet (retired) maalit saa julkaista, kilpailussa mukana olevia ei)
- Kun harjoittelet hyökkäyksiä WebGoatilla (XSS, SQLi, CSRF), voit samalla miettiä vaikutusta (impact). Miten tätä haavoittuvuutta voisi hyödyntää lisäoikeuksien hankkimiseen ja luvattomien toimintojen suorittamiseen.
h3 The Box
Jäikö jotain? Täydennä tarvittaessa edellisen kerran läksy keskiviikkoon 19.4 mennessä. Kommenteista löydät esimerkkiratkaisuja tehtäviin, muista viitata kaikkiin lähteisiin. ps. Kuten tunnilla huomasimme, parhaatkin opiskelijat käyttävät näihin melkoisesti aikaa ja aivoja.
Oletko guru? Jos Starting point on liian helppo, voit korvata "Starting point" tehtävät varsinaisella kilpa- tai eläköityneellä koneella.
- x) Katso ja tiivistä (Tässä x-alakohdassa ei tarvitse tehdä testejä tietokoneella, vain lukeminen tai kuunteleminen ja tiivistelmä riittää. Tiivistämiseen riittää muutama ranskalainen viiva.)
- Yksi valitsemasi IppSec:n murtautumisvideo.
- a) We like to shop. Ratkaise Portswigger Academyn "Lab: SQL injection vulnerability in WHERE clause allowing retrieval of hidden data". (Tee tarvittaessa tunnus Portswigger Academyyn).
- b) HTB. Tee HackTheBox.com tunnus. Avaa OpenVPN-yhteys "Starting Point" verkkoon. Estä tunnelin ulkopuolinen liikenne eli liikenne oikeaan Internettiin (vinkit alla). Testaa, että normaali Internet-liikenteesi on estetty.
- c) Meow. Käynnistä "Starting point": "Meow". (Spawn machine). Tallenna ruutukaappaus sivusta, jossa näkyy koneen osoite ja tunkeutumistehtäviä. Porttiskannaa kone ja analysoi tulokset. Suorita HTB:n antamat tehtävät. Raportoi normaalisti, "Starting point" -koneista saa julkaista läpikävelyohjeita.
- d) Fawn. Ratkaise Fawn. (HTB Starting point)
- e) Dancing. Ratkaise Dancing. (HTB Starting point)
- f) Vapaaehtoinen tai vaihtoehtotehtävä kohdille b-e: korkkaa yksi normaali kone HackTheBoxin Machines-kohdasta.
- g) Vapaaehtoinen: korkkaa toinenkin HTB Machines -kone.
Vinkit
- Tallenna säännöt, scope ym kuvakaappauksina. Eli minkä sivun perusteella päätit, että juuri tätä konettaa on oikeus käyttää harjoitusmaalina.
- HackTheBoxin OpenVPN-asetustiedoston lataaminen:
- Kirjaudu HackTheBox.com
- Connect to HTB (oikealta ylhäältä): Starting point: OpenVPN; Download VPN. Saat .opvn-asetustiedoston.
- Huomaa, että "Labs" ja "Starting point" ovat eri verkot, ja niille tarvitaan eri OpenVPN-tiedosto
- OpenVPN helposti ja turvallisesti
- 'nm-connection-editor' eli "Network Connections". Löytyy myös vasemman yläkulman starttivalikossa "Advanced Network Configuration", tai tarjottimelta verkon kuvaketta oikealla napilla klikkaamalla.
- VPN Connections: Configure VPN: Import a saved VPN configuration... Valitse lataamasi .opvn -tiedosto.
- Yhteys käyttöön: Tarjottimelta (oikea ylänurkka) vasemmalla napilla klikkaamalla menusta: VPN Connections: starting_point_terokarvinen.opvn
- Näin valittu OpenVPN-yhteys blokkaa tunnelin ulkopuolisen liikenteen. Samasta tarjottimen nettikuvakkeen valikosta voit palauttaa normaalin yhteyden, kun et enää harjoittele HackTheBoxia.
- HTB käytöstä
- Kun olet kirjautuneena HackTheBoxin etusivulla, oikean yläkulman "Connect to HTB" tai "Starting Point" näkyy vihreänä, kun olet HTB:nkin mielestä kytkeytyneenä. Sivu tosin pitää ladata uudelleen, jotta väri vaihtuu.
- Eri koneiden (Meow, Fawn...) "Spawn machine" -nappi näkyy toimivana vain, kun sinulla on OpenVPN-yhteys auki.
- Varmista, että Internet-liikenne on estetty
- ping 1.1.1.1 # ei vastausta, user timeout ctrl-c
- ping google.com # ei vastausta
- jne...
- Windowsin SMB-tiedostojakoja on kätevä tutkia 'smbclient' ohjelmalla. (Myös nmap ja metasploit sisältävät työkaluja SMB:n käyttöön).
- HTB "Starting point" ja eläköityneet "Retired" koneet saa raportoida normaalisti ja julkisesti. Jos ratkaiset HTB kilpakoneita ja raportoit niistä, niin salasanan taakse, että muutkin saavat kilpailla.
h4 Sequel fish
- x) Lue ja tiivistä (Tässä x-alakohdassa ei tarvitse tehdä testejä tietokoneella, vain lukeminen tai kuunteleminen ja tiivistelmä riittää. Tiivistämiseen riittää muutama ranskalainen viiva. Cheatsheetistä voit poimia muutaman itselle relevantin kohdan.)
- Cialdinin suostuttelun periaatteet (haluamastasi lähteestä)
- PortSwigger: SQL injection UNION attacks
- PortSwigger: SQL injection cheat sheet
- a) Kalassa. Laadi keihäskalasteluviesti (spear phising) kuvitteelliselle yritykselle. Tavoitteena on saada kohde avaamaan liitteenä oleva Excel-dokumentti ja laittamaan makrot päälle. Käytä ainakin kahta Cialdinin periaatetta. Selitä, miten näitä periaatteita on sovellettu viestiisi. Keksi skennario ja kohde itse. Käytä työssä vain kuvitteellisia yrityksiä ja henkilöitä. Viestiä ei lähetetä mihinkään, se tulee vain raporttiin. Liitteenä olevaa Excel-dokumenttia ei tarvitse tehdä, mutta jos siinä on jotain nokkelaa, voit kuvailla, mitä se olisi.
- PortSwigger labs
- b) SQL injection vulnerability allowing login bypass.
- c) SQL injection UNION attack, determining the number of columns returned by the query.
- d) SQL injection UNION attack, finding a column containing text.
- e) SQL injection UNION attack, retrieving data from other tables.
- f) SQL injection UNION attack, retrieving multiple values in a single column.
- g) SQL injection attack, querying the database type and version on Oracle.
- h) Vapaaehtoinen, vaikea: Mystery labs challenge. Tason voit itse valita. Monet harjoitukset sisältävät kohtia, joita ei ole erikseen opetettu kurssilla.
- i) Vapaaehtoinen, vaikea: Korkaa HTB:n maalikone, retired tai kilpakone.
Vinkit
- SQL injektioiden perusteet olivat läksynä jo aiemmin, joten voit vilkaista omaa tiivistelmääsi. PortSwigger: SQL injection
- Injektiot voi usein kirjoittaa ihan suoraan selaimen osoitekenttään, eli edes välimiesproxya ei usein tarvita.
- Muista kirjata välivaiheet ja selittää, miten päädyit valitsemaasi hyökkäykseen.
- Portswigger Academyn SQLi-harjoitus "SQL injection attack, querying the database type and version on MySQL and Microsoft" näytti olevan rikki kokeillessani, mutta sitä edellinen ja seuraava toimivat. Tuo rikkinäinen harjoitus ei ole läksynä.
- Jos jäät jumiin, Portswiggerin harjoituksiin on läpikävelyohjeet. Jos joudut käyttämään niitä, merkitse missä kohdassa tarvitsit.
- Selitä, miten päättelet ja muotoilet hyökkäyksen.
- Katso tarvittaessa kyseisen tietokannan omaa referenssimanuaalia. Esimerkiksi mitä sarakkeita on Postgren information_schema.tables -taulussa: haku "postgre information_schema.tables", ensimmäinen osuma on virallinen manuaali Chapter 37. The Information Schema - PostgreSQL Documentation
- Pakollisissa tehtävissä ei ole mitään sokeita injektioita. Niitä voi tulla vapaaehtoisessa Mystery labsissa. Joissain sokeissa injektioissa (blind SQL injection), data kuljetetaan ulos nimipavelun avulla (dns exfiltration). PortSwiggerin labroissa nämä harjoitukset toimivat labran tulimuurin takia vain PortSwiggerin omilla työkaluilla. Tämä koskee siis vain paria harjoitusta noin sadasta.
h5 Final Countdown
- x) Lue ja tiivistä (Tässä x-alakohdassa ei tarvitse tehdä testejä tietokoneella, vain lukeminen tai kuunteleminen ja tiivistelmä riittää. Tiivistämiseen riittää muutama ranskalainen viiva.)
- Karvinen 2022: Cracking Passwords with Hashcat
- Karvinen 2023: Crack File Password With John
- Karvinen 2023: Find Hidden Web Directories - Fuzz URLs with ffuf
- y) The SUPER ultimate Hakk3r Che33tsheet 0.0.1. Tee tiivistelmä omista ja kavereiden parhaista tunketumistekniikoista. Ole täsmällinen, liitä komennot mukaan. Tämän kohdan vastaus lienee pidempi kuin aiempien x-tehtävien. Viittaa lähteisiin. Tässä alakohdassa ei tarvitse ajaa komentoja tietokoneella.
- a) Asenna Hashcat ja testaa sen toiminta murtamalla esimerkkisalasana.
- b) Salainen, mutta ei multa. Ratkaise dirfuzt-1 artikkelista Karvinen 2023: Find Hidden Web Directories - Fuzz URLs with ffuf
- c) Asenna John the Ripper ja testaa sen toiminta murtamalla jonkin esimerkkitiedoston salasana.
- d) Jurpon sivut. Ohhoh, sieppasit juuri Jurpon Windowsista NTLM-tiivisteen 83f1cf89225005caeb4e52c9ea9b00e0 . Liitteenä Jurpon kotisivulta leikattu ja liimattu teksti. Tee oma hyökkäyssanakirja ja murra tiiviste myöhempää liikkumista (lateral movement) varten.
- e) Valitse 2: Ratkaise kaksi itse valitsemaasi tehtävää PortSwigger labs -sivulta. Tietysti sellaisia, jotka eivät ole olleet vielä läksynä.
- k) Vapaaehtoinen: käännä hashcat lähdekoodista. Auttaisikohan se hashcat:n AMD Ryzen -ongelmiin? Jos sinulla on AMD Ryzenin juuri se ongelmallinen malli, voit myös etsiä vaihtoehdon Hashcatille.
- l) Vapaaehtoinen: Murra jonkin itse tekemäsi tiedoston salasana. Onnistuuko muillakin kuin zip:llä?
- m) Vapaaehtoinen, vaikea: Lataa jokin kone Vulnhubista ja murtaudu siihen.
Liite: Jurpon kotisivu
Jurpon kotisivu
MasterLazerMan on suosikkisankarini. Olen aika komea, koska harrastan thriatlonin lisäksi Foo Man Zhu -perinnepainia. Olen kotoisin Kouvolasta, jonka arkkitehtuuri saa sydämmeni sykkiimään vikkelämmin.
Nähdään IRCissä, sähköpostissa tai DeepThinked-piilopalvelussa TORissa.
Vinkit
- Kavereiden raportteja löydät hakukoneilla ja tämän sivun kommenteista
- Viittauksia jaossa! Kannattaa tietysti laittaa oma raportti linkkinä ja houkuttelevalla kuvauksella tämän sivun kommentteihin.
Adminstrivia
Sprial shell icon by Emoji One, received under CC-by 4.0 international license.