Sovellusten hakkerointi ja haavoittuvuudet (5 op)
Toteutuksen tunnus: ICI012AS3A-3002
Toteutuksen perustiedot
- Ilmoittautumisaika
- 02.06.2025 - 15.08.2025
- Ilmoittautuminen toteutukselle on käynnissä.
- Ajoitus
- 18.08.2025 - 10.10.2025
- Toteutus ei ole vielä alkanut.
- Opintopistemäärä
- 5 op
- Toimipiste
- Pasilan toimipiste
- Opetuskielet
- suomi
- Paikkoja
- 15 - 30
- Koulutus
- TRATI Tradenomi tietojenkäsittely
- Opettajat
- Lari Iso-Anttila
- Tero Karvinen
- Ryhmät
-
CONTACTLähitoteutus
-
ITB5PASOF1Tradenomi tietojenkäsittely, monimuoto, 5. lukukausi, Pasila, Ohjelmistokehitys
-
BLENDEDMonimuotototeutus
-
IT4PAICI1Tradenomi tietojenkäsittely, 4. lukukausi, Pasila, ICT infra ja pilvipalvelut, ryhmä 1
-
IT5PASOF1Tradenomi tietojenkäsittely, 5. lukukausi, Pasila, Ohjelmistokehitys, ryhmä 1
-
ITB4PAICI1Tradenomi tietojenkäsittely, monimuoto, 4. lukukausi, Pasila, ICT infra ja pilvipalvelut
- Opintojakso
- ICI012AS3A
Arviointiasteikko
H-5
Aikataulu
- Johdanto. Järjestäytyminen. Standardit ja kehykset.
- Murtautuminen ja haavoittuvuuden korjaaminen lähdekoodista, esimerkkinä weppisolvellukset.
- Staattinen analyysi. Ghidra. Srings, file...
- Dynaaminen analyysi. Debuggerit ja gdb.
- Sulautetut järjestelmät.
- Salakirjoitus.
- Lipunryöstö
Aikataulu on alustava ja muuttuu kurssin aikana.
Toteutustavat, näyttö ja opinnollistaminen
Opiskelijan halutessa suorittaa opintojakso AHOT-menettelyä käyttäen, tulee opiskelijan ilmoittautua normaalisti opintojaksolle ja ottaa kurssin alkaessa yhteyttä opintojakson opettajaan AHOT-menettelyn käynnistämiseksi. AHOT edellyttää nimenomaan kurssi- ja toteutuskuvauksessa mainittujen taitojen osaamista ennestään esimerkiksi työn ja harrastusten kautta.
Intro
Katso ohjelmaasi hakkerin silmin. Korjaa haavoittuvuudet ennen rikollisia.
Kurssilla käymme läpi useita aihekokonaisuuksia, jotka auttavan ymmärtämään miten ohjelmistoja tulisi suojata ja miten voimme havaita haavoittuvuuksia ohjelmistoissa.
Oppimateriaalit
Kurssin aikana jaettava ja linkitetty materiaali sisältää sovellusten virallisia oppaita, kolmannen osapuolen tekemiä ohjeita ja muita verkkomateriaaleja. Luettavat alueet kirjoista pyritään valitsemaan mahdolisuuksien mukaan niin, että ne ovat luettavissa Haaga-Helian kirjaston kautta opiskelijatunnuksilla.
(Macintoshin käyttäjille: Apple Macintosh M1, M2, M3... ei sovi kurssin käyttöön, sillä se käyttää arm64-arkkitehtuuria. Kurssille kannattaa ottaa tavallinen PC-läppäri, koska monet harjoituksissa käytettävät sovellukset ja virtuaalikoneet on saatavissa vain tavallisimmalla amd64-arkkitehtuurilla. Käyttöjärjestelmäsi voi olla esimerkiksi Linux tai Windows, kunhan prosessorin arkkitehtuuri on se tavallisin amd64.)
Opetusmenetelmät ja ohjaus
Lähiopetus kerran viikossa, omat läppärit mukaan.
Joka viikko kotitehtäviä, joissa voi olla mukana ohjelmointia ja teknisesti haastavia ohjelmien analyysitehtäviä. Analyyseista palautetaan täsmällinen kirjallinen raportti. Raporteista laaditaan ristiinarviointi.
Kurssi edellyttää aktiivista osallistumista opetukseen ja kaikkien pakollisten kotitehtävien palauttamista viikottain. Koska kurssilla opetetaan tunkeutumismenetelmiä käytännössä, osallistuminen edellyttää kurssin sääntöjen hyväksymistä.
Opit käytännössä ohjelmien tutkimista ja haavoittuvuuksien etsimistä. Tututstut joihinkin alan johtaviin työkaluihin, aina strings:istä NSA:n Ghidraan.
Vanhojen toteutusten aikatauluja, läksyjä ja palautteita löytyy kurssin sivulta https://terokarvinen.com/application-hacking/
Työelämäyhteydet
Kannustetaan materiaalin julkaisuun myös kurssin käytänteillä.
Osoitetaan mahdollisuus oman harrastuneisuuden puitteissa osallistua tietoturvaskenen tapahtumiin ja lipunryöstöihin.
Tenttien ajankohdat ja uusintamahdollisuudet
Ei tenttiä.
Kansainvälisyys
Käytetään kansainvälistä materiaalia ja sovelluksia. Mahdollisuus julkaista kurssin raportit suuren yleisön saataville Internetiin.
Toteutuksen valinnaiset oppimistavat
Opiskelijan halutessa suorittaa opintojakso AHOT-menettelyä käyttäen, tulee opiskelijan ilmoittautua normaalisti opintojaksolle ja ottaa kurssin alkaessa yhteyttä opintojakson opettajaan AHOT-menettelyn käynnistämiseksi. AHOT edellyttää nimenomaan kurssi- ja toteutuskuvauksessa mainittujen taitojen osaamista ennestään esimerkiksi työn ja harrastusten kautta.
Oppimistehtävät
- Aktiivinen osallistuminen oppitunteihin
- Tuntitehtävät
- Läksyt viikottain, voivat sisältää ohjelmointia. Analyysitehtävistä yksityiskohtaiset, toistettavat raportit.
- Raporttien ristiinarviointi
Arviointitavat
- Akttivinen osallistuminen oppitunteihin
- Läksyt ja ristiinarviointi
- Lipunryöstö