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
CONTACT
Lähitoteutus
ITB5PASOF1
Tradenomi tietojenkäsittely, monimuoto, 5. lukukausi, Pasila, Ohjelmistokehitys
BLENDED
Monimuotototeutus
IT4PAICI1
Tradenomi tietojenkäsittely, 4. lukukausi, Pasila, ICT infra ja pilvipalvelut, ryhmä 1
IT5PASOF1
Tradenomi tietojenkäsittely, 5. lukukausi, Pasila, Ohjelmistokehitys, ryhmä 1
ITB4PAICI1
Tradenomi 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ö

Siirry alkuun