Ethical Hacking 2023
Tunkeutumistestaus ict4tn027-3012 loppusyksy online
Learn to hack computers to protect your own. In the course, you will break into target computers.
Excellent feedback, reached 5.0 out of 5.
Course name and code | Tunkeutumistestaus ict4tn027-3012 |
Timing | 2023 period 2 late autumn, w43-w50 |
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 | 5.0 / 5 Excellent feedback* |
Services | Moodle: Tunkeutumistestaus, Jitsi, Laksu. Voluntary extra: Tero's list. |
First class | 2023-10-23 w43 Mon, Tero emails video conference link |
* Best instance 5.0/5, every student gave feedback and every feedback was 5. Lowest 4.5/5 excellent, typical 4.9/5 excellent.
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
Maanantaisin 08:15 Jitsissä. Aloitamme aina 08:15, vierailijat tulevat mukaan yleensä ensimmäisen tauon jälkeen.
- 2023-10-23 w43 Alkutesti. Pentest yleiskuva. Kurssin sääntöjen hyväksyntä. Nuhteeton tausta. Rajaus (scope), sallitut toimintatavat (RoE), kuka saa luvata. Kybertappoketju. Johdanto tiedusteluun.
- 2023-10-30 w44 Vierailija Riku Juurikko, head of readiness and cyber resilience, Elisa: 09:00 Social Engineering, in English. Aktiivinen tiedustelu. Porttiskannaus ja oheistekniikat. Nmap. Työkalujen valvominen snifferillä. Wireshark.
- 2023-11-06 w45 Vierailija Lari Iso-Anttila, lehtori: 09:30 RFID, kulkukortit. Teron aiheena Valmiiden hyökkäysten käyttö ja harjoitusmaalit. Metasploit. Exploitdb ja searchsploit. Re-researcher (Twitter, Mastodon, Github...). Älä aja sokkona.
- 2023-11-13 w46 Vierailija Santeri Siirilä, security consultant, WithSecure 09:00: My Way of Hacking Web. Tiedustelu. IDOR, path traversal, Server Side Template Injection (SSTI), Server Side Request Forgery (SSRF), Cross Site Scripting (XSS), XML External Entities (XXE) . Tero: F12. ZAP ja TLS-välimieshyökkäys.
- 2023-11-20 w47 Mika Rautio, DevSecOps architect, Nexi Digital Finland: 09:00 Tale of two vulnerabilities? Teron aiheena Weppihyökkäykset II: Flipped classroom.
- 2023-11-27 w48 Vierailija Juho "whois" Jauhiainen, triage lead for Europe, Accenture 09:00. Antti Halonen, Miika Rajala, Jari-Pekka Ollikainen, Haaga-Helian opiskelijoita, 12:00: Windowsin virustorjunnan ohittaminen ja USB-hyökkäykset. (ps. 08:00 ilmoittautuminen "Python weppipalvelu" -kurssille).
- 2023-12-04 w49 Otto Ebeling, security consultant and founder, Critical Section Security. 09:00: Breaking into Cryptocurrencies. Niklas Särökaari, Security Operations, KONE 12:00: Red Teaming - How I get in and stay there. Teron aiheena Salasanojen murtaminen. Kaapatuista tiivisteistä. Salakirjoitetuista tiedostoista. Hashcat, john.
- 2023-12-11 w50 Lipunryöstö. Arvioitava laboratorioharjoitus.
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ä?
- Mitä pidit vierailijoista?
- Mitä tykkäsit viimeisen kerran lipunryöstöstä?
- 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.
Kaikki käytetyt lähteet tulee merkitä raporttiin: kurssin tehtäväsivu, kurssikavereiden raportit, man-sivut, kirjat. Mikäli tekoälyltä kysyy neuvoa, se on merkittävä lähteeksi. Tekoälyt hallusinoivat, tiedot on suositeltavaa tarkistaa. Tiivistelmiä tai esseitä ei saa generoida tekoälyllä eikä muilla vastaavilla tekniikoilla, vaan ne on kirjoitettava itse.
Tehtäviä saa aloittaa vasta, kun on hyväksynyt kurssin säännöt.
Läksyt ja alkutesti
h0 Alkutesti
a) Sieppaa ja analysoi verkkoliikennettä.
Raportin saa julkaista heti ja sitä mukaa, kun se valmistuu. Muista viitata tämän kurssin tehtäväsivuun, ohjekirjoihin, raportteihin ja kaikkiin muihinkin käyttämiisi lähteisiin. Analyysi on tärkeä osa työtä. Voit käyttää haluamiasi työkaluja. Seuraa ajan kulkua, jotta ehdit palauttaa raportin ja rinnakkaisarvioida kaksi työtä. Yksilötyö. Kaikkia julkisessa Internetissä olevia lähteitä saa käyttää. Keskustelu ja yhteistyö on alkutestissä kielletty. Tehtäviä saa aloittaa vasta, kun on hyväksynyt kurssin säännöt Moodlessa.
Kun olet palauttanut työn Laksuun, rinnakkaisarvioi kaksi työtä.
h1 Hacker Warmup
Tehtävät saa aloittaa vasta, kun on hyväksynyt kurssin säännöt. Mitään ulkopuolisia koneita ei saa porttiskannata ilman lupaa. Irrota tarvittaessa virtuaalikone Internetistä kokeilujen ajaksi. Tässä kotitehtävässä porttiskannaukset tehdään ensisijaisesti localhost-osoitteella.
Tässä harjoituksessa on tiedustelua ja lämmittelyä. Pääset lukemaan sen kuuluisan paperin kybertappoketjusta. Tutustut O'Reilly Learning -alustan videokursseihin. Kokeilet montaa harjoitusympäristöä. Jos hakkerointi sujuu jo, näillä samoilla alustoilla voit harjoitella myös kurssin ulkopuolella.
- x) Lue/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.)
- € 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.
- Hutchins et al 2011: Intelligence-Driven Computer Network Defense Informed by Analysis of Adversary Campaigns and Intrusion Kill Chains, chapters Abstract, 3.2 Intrusion Kill Chain.
- a) Ratkaise Over The Wire: Bandit kolme ensimmäistä tasoa (0-2).
- b) Ratkaise Challenge.fi:stä yksi tehtävä, esim. Challenge.fi 2021 Where was this picture taken, Encoding basics. Tai joku Challenge.fi 2022. (Nimi vaihtui sattuneesta syystä, se on nykyisin Next Gen Hack Challenge)
- c) Ratkaise PortSwigger Labs: Lab: SQL injection vulnerability in WHERE clause allowing retrieval of hidden data. (Edellyttää ilmaista rekisteröitymistä. Tehtävän voi ratkaista pelkästään selaimen osoitekenttää muokkaamalla.)
- d) Asenna Linux virtuaalikoneeseen. Suosittelen joko Kali (viimeisin versio) tai Debian 12-Bookworm.
- e) Porttiskannaa 1000 tavallisinta tcp-porttia omasta koneestasi (localhost). Analysoi tulokset.
- f) Porttiskannaa kaikki koneesi (localhost) tcp-portit. Analysoi tulokset. (Edellisissä kohdissa mainittuja analyyseja ei tarvitse toistaa, voit vain viitata niihin ja keskittyä eroihin).
- g) Tee laaja porttiskanaus (nmap -A) omalle koneellesi (localhost), kaikki portit. Selitä, mitä -A tekee. Analysoi tulokset. (Edellisissä kohdissa mainittuja analyyseja ei tarvitse toistaa, voit vain viitata niihin ja keskittyä eroihin.).
- h) Asenna ja käynnistä jokin palvelin (apache, ssh...) koneellesi. Vertaile, miten porttiskannauksen tulos eroaa.
- i) Kokeile ja esittele jokin avointen lähteiden tiedusteluun sopiva weppisivu tai työkalu. Hyviä esimerkkejä löytyy Bazzel: IntelTechniques: Tools ja Bellingcat: Resources, voit myös käyttää muuta itse valitsemaasi työkalua. Työkalua pitää siis myös kokeilla, pelkkä nimen mainitseminen ei riitä. Pidä esimerkit harmittomina, älä julkaise kenenkään henkilökohtaisia salaisuuksia raportissasi.
- j) Vapaaehtoinen: Tee lisää harjoituksia alustoilta, joihin tässä on tutustuttu: PortSwigger Academy, Over the Wire, Challenge.fi. Hakkeroimaan oppii hakkeroimalla.
Vinkit
- Challenge.fi vanhoissa harjoituksissa kaikki ominaisuudet eivät enää välttämättä toimi, esim vinkit tai vastauksen tarkistus. Encoding Basics -kohtaan vinkkini on base64. Where was this picture taken -kohtaan vinkkini on exiftool.
- Unohtuiko injektio?
- PortSwigger Academy: SQL injection.
- Mutta mainitsitte tunnilla, että SQL-injektioita oli kokeiltu aiemmilla kursseilla.
- PortSwigger Academyn omat läpikävelyohjeet suosittavat moneen kohtaan firman omaa, maksullista välimiesproxya. Mutta tässäkin läksynä oleva injektiotehtävä ratkeaa ihan weppiselaimella, ilman sen kummempia hakkerointityökaluja.
- Kannattaa asentaa harjoitteluun Linux virtuaalikoneeseen, vaikka host OS on valmiiksi Linux. Näin kaikki pentest-viritykset eivät turhaan sotke varsinaista käyttöjärjestelmääsi.
- nmap-komentoja on lueteltu tuossa alla, tehtävässä on tärkeä selittää ja analysoida annetut komennot, tulokset ja johtopäätökset.
- € Maksulliset aineistot saattavat näkyä ilmaiseksi Haaga-Helian tunnuksilla kirjaston kautta. Haaga-Helialla on käyttöoikeus O'Reilly Learning -kirjoihin (ent. Safari).
- Onko tosi vaikeaa? No, hakkerointi kyllä yleensä on sitä muillekin.
- Tee kaikki mitä osaat. Tehtävät eivät ole vaikeusjärjestyksessä, koska haastavuus riippuu siitä, mitä osaat ennestään. Kokeile siis kaikkia kohtia, vaikka jokin jäisi välistä.
- Tee vaikea tehtävä niin pitkälle kuin osaat.
- Raportoi vaikea kohta erityisen tarkasti.
- Listaa mahdolliset lähestymistavat.
- Etsi materiaalia verkosta. Vanhoja esimerkkiratkaisuja löytyy, kun laitat hakusanaksi asia+"karvinen". Jos joudut katsomaan läpikävelyohjetta (eli askel askeleelta ratkaisua tähän nimenomaiseen kysymykseen), merkitse se selkeästi. Samantapaisten tehtävien ohjeet (esim jonkun toisen palvelun SQL-injektio) eivät ole läpikävelyohjeita, niitä tarvitaan lähes aina.
- Muista viitata kaikkiin lähteisiin
- Onko tosi helppoa? No, me muut voimme keskittyä ihailemaan. Saat lisähaastetta tekemällä vapaaehtoisia lisätehtäviä, laatimalla nerokkaita ja helppotajuisia analyysejä tehtäviin sekä antamalla hyviä vinkkejä rinnakkaisarvioinnissa.
- Viittaa jokaisessa raportissa kaikkiin lähteisiin. Ainakin tämä tehtäväsivu on lähteenä. Muita ovat usein man-sivut, toisten kotitehtäväraportit, ohjeet, weppisivut....
Nmap (ulkomuistista, joten komennot saattavat vaatia hieman hienosäätöä)
$ man nmap
$ sudo nmap localhost
$ sudo nmap -p- localhost
$ sudo nmap -A localhost
$ sudo nmap -Pn localhost
h2 Sniff-n-Scan
Sniff-n-scan tutustuttaa uuteen lähteeseen, hakkeritapahtumien nauhoihin. Opit valvomaan hyökkäystyökalujen toimintaa snifferillä, ja tutustut Wiresharkiin. Wireshark osaa myös analysoida paketit automaattisesti. Weppiin murtautumista auttaa suomalainen, fuzzereiden huipulle noussut ffuf. Harjoitusmaalien asentamisesta kokeillaan paikallisia binäärejä (by yours truly) ja Dockeria.
- x) Lue/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.)
- Hoikkala "joohoi" 2020: Still Fuzzing Faster (U fool). In HelSec Virtual meetup #1. (about 1 hour)
- Lyon 2009: Nmap Network Scanning: Chapter 15. Nmap Reference Guide:
- Port Scanning Basics (opettele, mitä tarkoittavat: open, closed, filtered; muuten vain silmäily)
- Port Scanning Techniques (opettele, mitä ovat: -sS -sT -sU; muuten vain silmäily)
- a) Fuff. Ratkaise Teron ffuf-haastebinääri. Artikkelista Find Hidden Web Directories - Fuzz URLs with ffuf voi olla apua.
- b) Fuffme. Asenna Ffufme harjoitusmaali paikallisesti omalle koneellesi. Ratkaise tehtävät (kaikki paitsi ei "Content Discovery - Pipes")
- Basic Content Discovery
- Content Discovery With Recursion
- Content Discovery With File Extensions
- No 404 Status
- Param Mining
- Rate Limited
- Subdomains - Virtual Host Enumeration
- Porttiskannaa paikallinen kone (127.0.0.2 tms), sieppaa liikenne snifferillä, analysoi.
- c) nmap TCP connect scan -sT
- d) nmap TCP SYN "used to be stealth" scan, -sS (tätä käytetään skannatessa useimmin)
- e) nmap ping sweep -sn
- f) nmap don't ping -Pn
- g) nmap version detection -sV (esimerkki yhdestä palvelusta yhdessä portissa riittää)
- h) nmap output files -oA foo. Miltä tiedostot näyttävät? Mihin kukin tiedostotyyppi sopii?
- i) nmap ajonaikaiset toiminnot (man nmap: runtime interaction): verbosity v/V, help ?, packet tracing p/P, status s (ja moni muu nappi)
- j) Ninjojen tapaan. Piiloutuuko nmap-skannaus hyvin palvelimelta? Vinkkejä: Asenna Apache. Aja nmap-versioskannaus -sV tai -A omaan paikalliseen weppipalvelimeen. Etsi Apachen lokista tätä koskevat rivit. Wiresharkissa "http" on kätevä filtteri, se tulee siihen yläreunan "Apply a display filter..." -kenttään. Nmap-ajon aikana p laittaa packet tracing päälle. Vapaaehtoinen lisäkohta: jääkö Apachen lokiin jokin todiste nmap-versioskannauksesta?
- k) UDP-skannaus. UDP-skannaa paikkalinen kone (-sU). "Mulla olis vitsi UDP:sta, mutta en tiedä menisikö se perille":
- l) Miksi UDP-skannaus on hankalaa ja epäluotettavaa? Miksi UDP-skannauksen kanssa kannattaa käyttää --reason flagia ja snifferiä? (tässä alakohdassa vain vastaus viitteineen, ei tarvita testiä tietokoneella)
Vinkit
- Miten nmap toimii?
- Tee nmapilla testit, sieppaa liikenne snifferillä (wireshark) ja analysoi tulokset.
- Tee testit mahdollisimman suppeasti, jotta analysointi on helpompaa. Esimerkiksi skannaa vain yksi portti yhdestä koneesta, jos ominaisuuden esittely ei hyöydy laajemmasta skannauksesta.
- Selitä myös, miksi nmap lähettää tuollaisia paketteja.
- Käytä nmap:ia normaalisti sudo:n kanssa.
- Kannattaa tietysti aloittaa lukemalla man-sivulta tai Nmap Reference Guidesta, mitä noilla toiminnoilla on ylipäänsä tarkoitus tehdä.
- Porttiskannaa ainoastaan omaa konetta omassa verkossa ja harjoitusmaaleja.
- Analyysi ja selittäminen on tärkeää. Toki tarvitaan ote snifferin lokista, komento ja ote sen tulosteesta, mutta ne eivät riitä ilman selitystä.
- Wireshark
- sudo apt-get install wireshark
- normal (non-root users) can capture traffic? YES
- sudo adduser $(whoami) wireshark # log out, log back
- wireshark
h3 Lab kid
Oma hyökkäyslabra etenee. Rakennat useamman koneen verkon, jossa testata turvallisesti hakkerointia. Edetään kybertappoketjussa tiedustelusta uusiin vaiheisiin: aseistus, toimitus, exploit, asennus ja kontrollikanava.
Irroita koneet Internetistä harjoittelun ajaksi. Ole huolellinen.
- x) Lue/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.)
- € Velu 2022: Mastering Kali Linux for Advanced Penetration Testing 4ed: Chapter 10 - Exploitation: kappaleet "The Metasploit Framework", "The exploitation of targets using Metasploit" ja "Using public exploits". Eli ei enää kappaletta "Developing a Windows exploit" ja siitä eteenpäin.
- Vapaavalintainen läpikävely 0xdf tai ippsec (Kannattaa valita helppo; esim "Base Points: Easy")
- Nyrkkeilysäkki ei kuulu. Etsi hakukoneesta kotitehtäväraportti, jossa Kali ja Metasploitable on asennettu samaan verkkooon VirtualBoxiin; sekä testaamalla osoitettu, että koneet on saatu irti Internetistä. Tällaiset tehtävät ovat olleet jonain vuonna esimerkiksi nimillä "Nyrkkeilysäkki" ja "Ei kuulu". (Löytyy hakukoneista, esimerkiksi hakusanoilla "tero karvinen nyrkkeilysäkki". Raportit voivat olla pitkiä, vain nuo mainitut kohdat tarvitsee käsitellä)
- 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
- Osoita eri komennoilla, että Internet-yhteys katkeaa: 'ping 1.1.1.1', 'ping www.google.com', 'curl www.google.com'
- d) Etsi Metasploitable porttiskannaamalla (db_nmap -sn). Tarkista selaimella, että löysit oikean IP:n - Metasploitablen weppipalvelimen etusivulla lukee Metasploitable. Katso, ettei skannauspaketteja vuoda Internetiin - kannattaa irrottaa koneet netistä skannatessa.
- e) Porttiskannaa Metasploitable huolellisesti (db_nmap -A -p0-). Analysoi tulos. Kerro myös ammatillinen mielipiteesi (uusi, vanha, tavallinen, erikoinen), jos jokin herättää ajatuksia.
- f) Murtaudu Metasploitablen VsFtpd-palveluun Metasploitilla (search vsftpd, use 0, set RHOSTS - varmista osoite huolella, exploit, id)
- g) Parempi sessio. Tee vsftpd-hyökkäyksestä saadusta sessiosta parempi. (Voit esimerkiksi päivittää sen meterpreter-sessioksi, laittaa tty:n toimimaan tai tehdä uuden käyttäjän ja ottaa yhteyden jollain tavallisella protokollalla)
- h) Etsi, tutki ja kuvaile jokin hyökkäys ExploitDB:sta. (Tässä harjoitustehtävässä pitää hakea ja kuvailla hyökkäys, itse hyökkääminen jää vapaaehtoiseksi lisätehtäväksi)
- i) Etsi, tutki ja kuvaile hyökkäys 'searchsploit' -komennolla. Muista päivittää. (Tässä harjoitustehtävässä pitää hakea ja kuvailla hyökkäys, itse hyökkääminen jää vapaaehtoiseksi lisätehtäväksi. Valitse eri hyökkäys kuin edellisessä kohdassa.)
- j) Kokeile vapaavalintaista haavoittuvuusskanneria johonkin Metasploitablen palveluun. (Esim. nikto, wpscan, openvas, nessus, nucleus tai joku muu)
- k) Kokeile jotain itsellesi uutta työkalua, joka mainittiin x-kohdan läpikävelyohjeessa.
- m) Vapaaehtoinen: Kokeile hyökkäystä, joka löytyy ExploitDB:sta. Huomaa, että joidenkin vanhempien hyökkäysten mukana tulee harjoitusmaali.
- n) Vapaaehtoinen: Murtaudu johonkin toiseen Metasploitablen palveluun.
- o) Vapaaehtoinen: Asenna ja korkkaa Metasploitable 3. Karvinen 2018: Install Metasploitable 3 – Vulnerable Target Computer
Vinkit
- Virtuaalikoneeseen kiinnitetyt verkot ja kortit näkyvät 'ip a', 'ifconfig'. Verkot ovat usein reitittymättömiä, esim 10.x.x.x tai 192.168.x.x
- Jos verkkomaskit ovat unohtuneet, 'ipcalc 10.0.0.1/8' auttaa
- Jos verkot ovat unohtuneet, Wikipedia: "Internet protocol suite" auttaa
- Luetaan niitä sorsia
- Metasploitin mukana tulevat hyökkäykset hyökkäävät yleensä vain sinne kohteeseen, eli eivät yleensä sisällä mitään troijalaisia meitä vastaan
- Netistä, Githubista, Mastodontista jne etsityt hyökkäykset voivat korkata oman koneesi, jos et ole varovainen. Joten lue ne sorsat ennen ajamista.
- Jos tiedostossa on sotkua "ooc7yoBoohieleisiarieTuh6ooshaigieji3aeChahph3aequ", kannattaa miettiä, mihin sitä käytetään
- € Maksulliset aineistot saattavat näkyä ilmaiseksi Haaga-Helian tunnuksilla kirjaston kautta. Haaga-Helialla on käyttöoikeus O'Reilly Learning -kirjoihin(ent. Safari).
- searchsploit löytyy valmiina Kalista
- ExploitDB
- https://www.exploit-db.com/
- A "Vulnerable application", V "Verified". Voi suodattaa yläreunan täpillä "Verified" ja "Has App".
- Parempi shell
- https://book.hacktricks.xyz/generic-methodologies-and-resources/shells/full-ttys
- https://blog.ropnop.com/upgrading-simple-shells-to-fully-interactive-ttys/
- ctrl-Z, sessions, session -u 1, session 1 (ulkomuistista)
- Jos maalissa on kivikauden sshd joka ei toimi nykyisillä asiakkailla, voit etsiä apt-get:lla jonkun ssh-asiakkaan, joka tulee vanhoja asetuksia, salauksia ja protokollia.
h4 Totally Legit Sertificate
Opit murtautumaan weppiin. Nyt päästään kokeilemaan niitä hyökkäyksiä, joita päivällä opittiin. Paljon uusia tehtäviä!
Tässä läksyssä on monta uudistettua tehtävää, joita en ehtinyt testata. Jos joku aiheuttaa pulmia, ratkaise se viimeisenä. Käytä työkaluja vain harjoitusmaaleihin, ei muiden ihmisten koneisiin.
- x) Lue/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.)
- OWASP 2021: OWASP Top 10:2021
- A01:2021 – Broken Access Control (IDOR ja path traversal ovat osa tätä)
- A10:2021 – Server-Side Request Forgery (SSRF)
- PortSwigget Academy:
- Karvinen 2020: Using New Webgoat 2023.4 to Try Web Hacking
- OWASP 2021: OWASP Top 10:2021
- a) Totally Legit Sertificate. Asenna OWASP ZAP, generoi CA-sertifikaatti ja asenna se selaimeesi. Laita ZAP proxyksi selaimeesi. Osoita, että hakupyynnöt ilmestyvät ZAP:n käyttöliittymään. (Ei toimi localhost:lla ilman Foxyproxya)
- b) Kettumaista. Asenna FoxyProxy Standard Firefox Addon, ja lisää ZAP proxyksi siihen.
- PortSwigger Labs. Ratkaise tehtävät. Selitä ratkaisusi: mitä palvelimella tapahtuu, mitä eri osat tekevät, miten hyökkäys löytyi, mistä vika johtuu. (Voi käyttää ZAPia, vaikka malliratkaisut käyttävät harjoitusten tekijän maksullista ohjelmaa)
- Insecure Direct Object Reference (IDOR)
- Path traversal
- Server Side Template Injection (SSTI)
- g) Server-side template injection with information disclosure via user-supplied objects (Tämä on merkitty hieman vaikeammaksi, jätä viimeiseksi jos näyttää hankalalta)
- Server Side Request Forgery (SSRF)
- Cross Site Scripting (XSS)
- k) Asenna Webgoat 2023.4. (Uusi versio, jossa on eri tehtäviä kuin vanhemmissa)
- l) (Poistin kohdan l, helppo tehtävä johon olisi mennyt turhaa aikaa.)
- Ratkaise WebGoat 2023.4:
- m) (A1) Broken Access Control (WebGoat 2023.4)
- Hijack a session (1) [vaikea]
- Insecure Direct Object References (4) [vaikeita kohtia]
- Missing Function Level Access Control (3) [Update: Kohta 4 saattaa olla rikki: "The company fixed the problem, right?"]
- Spoofing an Authentication Cookie (1) [Update: tämän tehtävän ratkaisu on vähän hassu]
- n) (A7) Identity & Auth Failure (WebGoat 2023.4)
- Authentication Bypasses (1)
- Insecure Login (1)
- o) (A10) Server-side Request Forgery (WebGoat 2023.4)
- Server-Side Request Forgery (2)
- p) Client side (WebGoat 2023.4)
- Bypass front-end restrictions (2)
- m) (A1) Broken Access Control (WebGoat 2023.4)
- Vapaaehtoinen: Ratkaise lisää WegGoat-tehtäviä.
- Vapaaehtoinen: Ratkaise lisää PortSwigger Labs -tehtäviä.
Vinkit
- Firefox ei enää ohjaa proxyyn liikennettä mihinkään 127-alkuiseen IP-osoitteeseen eikä localhostiin. Mutta Foxyproxyn avulla se onnistuu.
- OWASP ZAP Download-sivun sopivin JAR on "Cross Platform Package", noin 250 MB.
- Proxya voi testata vaikkapa Metasploitablen weppipalveluiden kanssa.
- Älä tee hyökkäyksiä mihinkään muualle kuin harjoitusmaaleihin
- ZAP TLS-yhteyksien avaamiseen CA-sertifikaatti löytyy Tools: Options alta, hakusanaksi "Certificate".
- Firefoxissa Settings ja hakusanaksi "Certificate"
- ZAP hakupyynnön pysäytys
- Puussa olevista osoitteista oikeaa nappia, menusta "Break..."
- Tee pyyntö selaimella
- Pyyntö näkyy ZAPissa oikealla ylhäällä "Break" välilehdellä.
- Muokaa pyynnön tekstiä, lähetä eteenpäin yläreunan työkalupallin Play-symbolia klikkaamalla
- ZAPin oppaita pikaisella nettihaulla
- Kulonpää 2021: Tunkeutumistestaus vko. 5
- South Dakota Information Security 2018 - OWASP ZAP Tutorial - Part 1: Intercepting Traffic
- PortSwiggerin tehtävissä voi käyttää välimiesproxyna ZAP:ia. Ei siis tarvitse ostaa noiden harjoitusten tekijän hienoa ohjelmaa.
- Viittaa
- Viittasithan kurssiin ja tehtäväsivuun?
- Viittasithan kaikkiin käyttämiisi artikkeleihin?
- Viittasithan muiden tehtäväraportteihin, jos käytit lähteenä?
- Videoihin, man-sivuihin, ohjelmiin, StackOverflowhun...
- Viittasithan kaikkiin muihinkin lähteisiin?
- Hakkeroimaan oppii hakkeroimalla - ja kun olet ratkaissut nämä tehtävät, olet hakkeroinut taas melkoisen setin.
h5 Injected Sequel
Nyt olisi tarjolla OWASP 2017 numero uno, SQL injektio. Kannattaa aloittaa saman tien, niin ehdit ratkoa tehtäviä monena päivänä.
Juuri ennen tunnin alkua, maanantaina 08:00, voi ilmoittautua weppikurssille Pepissä. Edellinen toteutus sai 5.0 palautteen: jokainen osallistuja antoi palautetta, jokainen palaute oli 5/5. "Python weppipalvelu - ideasta tuotantoon" ICT8TN034-3004, w21 ma - w22 ke koko päivän.
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.)
- Karvinen 2016: PostgreSQL Install and One Table Database – SQL CRUD tutorial for Ubuntu (Virtuaaliympäristöä ei tarvita, voit aloittaa kohdasta "Three line install"
- OWASP 2017: A1:2017-Injection
- PortSwigger Academy: SQL injection
- Kaikki muut luvut paitsi ei "Blind SQL injection"
- Tämä kappale kannattaa pitää näkyvissä injektioita tehdessä SQL injection cheat sheet
- Vapaaehtoinen: Karvinen 2019: MitmProxy on Kali and Xubuntu – attack and testing (Nykyisin asennus 'sudo apt-get install mitmproxy')
a) CRUD. Tee uusi PostgreSQL-tietokanta ja demonstroi sillä create, read, update, delete (CRUD). Keksi taulujen ja kenttien nimet itse. Taulujen nimet monikossa, kenttien nimet yksikössä, molemmat englanniksi.
b) SQLi me. Kuvaile yksinkertainen SQL-injektio, ja demonstroi se omaan tietokantaasi psql-komennolla. Selitä, mikä osa on käyttäjän syötettä ja mikä valmiina ohjelmassa. (Tässä harjoituksessa voit vain kertoa koodista, ei siis tarvitse välttämättä koodata sitä ohjelmaa, joka yhdistää käyttäjän syötteen SQL:n)
PortSwigger Labs
- c) (Alakohta c poistettu, tämänhän ratkoimme jo aiemmin: SQL injection vulnerability in WHERE clause allowing retrieval of hidden data)
- d) SQL injection vulnerability allowing login bypass
- e) SQL injection attack, querying the database type and version on Oracle
- f) SQL injection attack, querying the database type and version on MySQL and Microsoft
- g) SQL injection attack, listing the database contents on non-Oracle databases
- h) SQL injection UNION attack, determining the number of columns returned by the query
- i) SQL injection UNION attack, retrieving data from other tables
- j) SQL injection UNION attack, retrieving multiple values in a single column
k) Vapaaaehtoinen: Mitmproxy. Demonstroi mitmproxy:n käyttöä terminaalista (TUI tai CLI).
l) Vapaaehtoinen: Attack lab. Asenna vapaavalintainen kone Vulnhubista ja murtaudu siihen.
Vinkit
- Aloita ajoissa, niin voit tehdä tehtäviä monena päivänä.
- Useimmat SQL-injektiotehtävät tässä läksyssä voinee ratkaista pelkällä selaimella, joskin välimiesproxylla se lienee mukavampaa.
- Tehtäviä saa täydentää. Jos edellisen kerran IDORit ja muotti-injektiot tuntuvat oppitunnin jälkeen selkeämmiltä, voit tehdä ne nyt. Merkitse silloin vanhan raportin sekaan viittaus [Update 2023-11-21 w47 Tue: Jatkoin tehtävän tekoa tänään, uusi ratkaisu raportin lopussa] ja siitä linkki raportin loppuun. On tärkeää, että raportti säilyy täsmällisenä ja totuudenmukaisena kuvauksena tapahtumista. Historia ei voi muuttua.
- Tarkista, että jokainen tehtäväraporttisi viittaa tähän tehtäväsivuun ja kaikkiin muihinkin lähteisiin.
- Haastava kohde?
- Mieti vielä eri vaihtoja ja lähestymistapoja.
- Mitä lukuläksy opettaa aiheesta?
- Tee muita tehtäviä ensin, jätä vaikeat viimeiseksi.
- Löytyykö jostain eri tehtävän ratkaisu, joka on samantapainen?
- Yritä kovemmin, ja raportoi selkeämmin.
- Tee pari punnerrusta tai jaloittele ulkona.
- Jos muu ei auta: walktrough.
- Jos tehtävä ei ratkea, niin lopuksi kannattaa etsiä esimerkkiratkaisu juuri tähän tehtävään, ja käyttää sitä.
- Moniosaisessa tehtävässä (esim jotkut VulnHub-koneet) voi katsoa läpikävelystä yhden vaiheen, ja sitten kokeilla seuraavaa.
- Läpikävelyohjeeseen pitää viitata. Raporttiin tulee selkeästi merkitä, missä vaiheessa on käytetty läpikävelyohjetta.
- VulnHub
- Difficulty: Easy. Toki saat ottaa minkä koneen vain, mutta helpoista kannattaa aloittaa.
- Voit kokeilla eri koneita.
- Jos jäät jumiin, läpikävely koneelle foo löytynee hakukoneesta: vulnhub foo walktrough
h6 Attaaack
Tämä läksy sisältää PhishSticks-tiimin (Halonen, Rajala ja Ollikainen) ehdotusten pohjalta tehtyjä läksyjä.
- 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.)
- € Yehoshua and Kosayev 2021: Antivirus Bypass Techniques, luku:
- Halonen, Rajala ja Ollikainen 2023: PhishSticks Youtube Channel, kahdeksan videota, yhteensä noin 15 min
- Halonen, Rajala ja Ollikainen 2023: PhishSticks Git Repository, sivut:
- README.md (Aikajärjestyksessä, jos aloitat pohjalta. Kuvailee, miten näitä tekniikoita opeteltiin ja kehitettiin)
- Revshell
- Mitigations
- Installing Windows 10 on a virtual machine
- MITRE Att&ck Frequently Asked Questions: Part 1. General.
- Erityisesti kehikon omat määritelmät termeille tactics, techniques and procedures
- MITRE Att&ck Enterprise Matrix
- Silmäile, poimi muutama esimerkki. Koko kehikko on laaja, eikä sitä tarvitse lukea tässä kokonaan.
- a) The OS pwns you. Asenna Windows virtuaalikoneeseen samaan verkkoon hyökkäyskoneen (esim. Kali, Debian) kanssa. Kokeile, että saat koneen irrotettua Internetistä.
- b) Trustme.lnk. Kokeile PhishSticksin revshell vihamielistä tiedostoa, joka avaa käänteisen shellin hyökkääjän koneelle. Selitä, mitä tapahtuu ja miksi. Testaa, että pysyt antamaan kohdekoneelle komentoja reverse shellin kautta.
- d) PageRank. Laita linkki raporttiisi kurssisivun kommentiksi.
- Kannattaa mainita URL sekä leipätekstissä ("Comment") että kotisivun osoitteessa ("Homepage"), jotta sitä on helppo klikata.
- Yksikin lause sisällöstä tai jostain kiinostavasta huomiosta lisännee klikkauksia
- PhishSticks etsii tästä viitattavia projekteja, joten tästä voi saada useita sisääntulevia linkkejä kerralla.
- Tämä kommentin lisääminen on erittäin suositeltava, mutta vapaaehtoinen. Olet kirjoittanut raportteja tunteja ja päiviä - miksi kirjoittaa pöytälaatikolle?
- Email-kohtaan pitää täyttää joku osoite, jotta se toimii. Voit laittaa tuohon oman osoitteen tai example.com.invalid-osoitteen, sillä osoite ei tule näkyviin.
- Hyväksyn kommentit käsin, ne tulevat siis näkyviin viiveellä.
- c) Attaaack! MITRE Attack Enterprise Matrix: Demonstroi viisi tekniikkaa viidestä eri taktiikasta.
- Tekniikkaa tulee kokeilla käytännössä, kuvailu ei riitä.
- Asenna tarvittaessa omat harjoitusmaalit. Eristä tarvittaessa koneet Internetistä harjoittelun ajaksi.
- Voit käyttää kurssilla jo opeteltuja työkaluja (helpompaa) tai kokeilla uusia. Aiemminkin käytetyistä tekniikoista pitää tehdä uusi demonstraatio tässä tehtävässä.
- Mikäli haluat tehtävästä helpon version, tekniikoiden valinta auttaa. Tuolta löytyy myös tuttuja ja helppoja tekniikoita.
- Selitä, mitä esimerkissä tapahtuu.
- Nimeä käytetyt taktiikat, tekniikat ja alitekniikat. Merkitse myös numerot T0123.456.
- d) Vapaaehtoinen: Total attak! Demonstroi yksi tekniikka jokaisesta MITRE Attack -taktiikasta. (Noista aiemmin tehdystä viidestä ei tarvitse tehdä uutta demonstraatiota.) MITRE Attack Enterprise Matrix
- e) Vapaaehtoinen: Kokeile jokin toinen hyökkäystekniikka PhishSticks-projektista.
- f) Vapaaehtoinen, vaikea: Tee oma RAT tai malware ja testaa sitä. Miten tunnistaisit oman haittaohjelmasi ja estäisit sen toiminnan? (Kotitehtävissä ei tehdä matoja tai muita itsestään leviäviä ohjelmia. Katso turvallisuusvinkit alta).
Vinkit:
- Tähditä jos tykkäät
- Kannattaa hövelisti merkkailla Github-tähtiä ja Youtube-peukkuja ym. kavereiden sivuihin, jos pidät niistä.
- Tähtiä voit halutessasi merkkailla niin PhishSticksiin kuin kavereiden kotitehtäväraportteihin.
- Windowsin asennus
- Halonen, Rajala ja Ollikainen 2023: Installing Windows 10 on a virtual machine
- Microsoft tarjoaa ilmaista kokeiluversiota https://www.microsoft.com/en-us/evalcenter/download-windows-10-enterprise
- Voi käyttää myös muuta Windowsin lisenssiä, esimerkiksi omaa ylimääräistä lisenssiä tai koulun kautta saatuja opiskeljalisenssejä, jos teillä sattuu olemaan niitä.
- Joskus Microsoftin lataussivut näyttävät iso-kuvat vain Linux-selaajille (user-agent), ja Windows-selaajille jonkun monimutkaisemman version. En ole kokeillut, onko tässä niin.
- Halonen, Rajala ja Ollikainen 2023: Installing Windows 10 on a virtual machine
- Reverse shell
- Kun kohdekone soittaa kotiin, niin hyökkäyskoneella pitää olla portti auki. Myös tulimuurista.
- Ole huolellinen
- Haittaohjelmaesimerkit pitää tehdä niin, että ne eivät vahingossakaan voi joutua tuotantoverkkoihin
- Vahinkoa aiheuttavat toimet tulee simuloida ilman, että niitä tehdään täysimittaisina. Esim ransomware-simulaation voi laittaa käsittelemään vain tiedostoja, jotka ovat kansiossa "sample-target-eip9xi/" ja antamaan virheilmoitus, jos demokansiota ei löydy.
- Tässä harjoituksessa tehdyt ohjelmat eivät saa levitä ilman ihmisen toimenpiteitä (ei matoja)
- Pidä koneet tarvittaessa irti Internetistä
- "Python weppipalvelu - ideasta tuotantoon" ICT8TN034-3004, w21 ma - w22 ke koko päivän. Ilmoittautuminen käynnissä. Edellinen toteutus sai 5.0 palautteen: jokainen osallistuja antoi palautetta, jokainen palaute oli 5/5. Opit koodaamaan Laksyn tyylisen weppipalvelun Pythonilla ja laittamaan sen pilveen julkiseen Internetiin. Jos osaat koodauksen alkeet, niin kurssi on selvästi helpompi kuin Tunkeutumistestaus.
h7 Hash
- 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.)
- Karvinen 2022: Cracking Passwords with Hashcat
- Karvinen 2023: Crack File Password With John
- a) Hashcat. Asenna Hashcat ja testaa sen toimivuus ratkaisemalla tiiviste.
- b) John. Asenna Jumbo John ja testaa sen toimivuus murtamalla jonkin tiedoston salasana.
- c) f5bc7fcc7f5b3b6af7ff79e0feafad6d1a948b6a2c18de414993c1226be48c1f on erään tällä tehtäväsivulla olevan yksittäisen sanan tiiviste. Käytin hyvin yleistä ja tunnettua tiivistealgoritmia. Sanassa voi olla isoja kirjaimia, mutta ei erikoismerkkejä. Minkä sanan tiiviste on kyseessä?
- d) Cheatsheet. Kerää kurssilaisten raporteista käteviä tekniikoita. Kerää itse tekniikat ja komennot, älä pelkästään kuvaile. Muista lähdeviitteet. Tee tiivis ja selkeä cheatsheet, josta löydät tarvittavat tiedot lipunryöstössä. (Tässä alatehtävässä ei tarvitse tehdä testejä koneella)
- e) Viittaa. Tarkista, että jokaisessa raportissasi on lähdeviitteet kunnossa. Jokaisen raportin tulee viitata ainakin kurssiin / tehtäväsivuun. Kaikkiin muihinkin käytettyihin lähteisiin tulee viitata, kuten kurssikavereiden raportteihin, weppisivuihin, man-sivuihin... (Tässä alatehtävässä ei tarvitse tehdä testejä koneella).
- f) Vapaaehtoinen: Kertaa. Harjoittele. Kannattaa kerrata tai täydentää eritoten h4 Totally Legit Sertificate.
- g) Vapaaehtoinen: Tee h8 Extrabonus, jos haluat.
Vinkit
- Sanakirjan tekoon: pythonpy, tr ' ' '\n', cewl
h8 Extrabonus
Täysin vapaaehtoinen: Tämä h8 palautetaan vain, jos sinulla on jotain kerrottavaa näihin vapaaehtoisiin kohtiin. Jos haluat palauttaa tämän, niin määräaika on viimeinen tapaamiskerta.
- a) Vapaaehtoinen: Parannukset. Listaa olennaiset parannukset, joita olet tehnyt raportteihisi vertaisarvioinnin jälkeen. Linkitä parannettuihin kohtiin.
- b) Vapaaehtoinen: Bonus. Listaa vapaaehtoiset bonustehtävät, joita olet tehnyt. Linkitä vapaaehtoisten kohtien vastauksiisi.
- c) Vapaaehtoinen: Lipunryöstö. Jos olet ratkonut lipunryöstöjä kurssin ulkopuolella, kerro tässä mitä. Linkitä ruutukaappauksiin, hall of fameen, kirjoittamaasi läpikävelyyn tms.
Adminstrivia
Sprial shell icon by Emoji One, received under CC-by 4.0 international license.
This page will keep updating during course.