Siirry suoraan sisältöön

Takaisinmallintaminen (5 op)

Toteutuksen tunnus: TTC6510-3001

Toteutuksen perustiedot


Ilmoittautumisaika

01.08.2022 - 25.08.2022

Ajoitus

29.08.2022 - 27.10.2022

Opintopistemäärä

5 op

Toteutustapa

Lähiopetus

Yksikkö

Teknologiayksikkö

Toimipiste

Lutakon kampus

Opetuskielet

  • Suomi

Paikat

0 - 35

Koulutus

  • Tieto- ja viestintätekniikka (AMK)

Opettaja

  • Joonatan Ovaska

Tavoitteet

Kurssin suoritettuaan opiskelija on tietoinen menetelmistä joilla voidaan takaisinmallintaa ohjelmia. Kurssin hyväksytysti suoritettuaan opiskelija pystyy takaisinmallintamaan yksinkertaisia x86 Windows ja Linux ohjelmia. Opiskelija ymmärtää dynaamisen ja staattisen analyysin erot. Opiskelija kykenee suorittamaan yksinkertaista dynaamista analyysiä. Opiskelija ymmärtää PE binääritiedostojen rakenteen ja kuinka niitä voidaan analysoida käyttäen olemassaolevia laajasti käytettyjä työkaluja. Opiskelija oppii dokumentoimaan löydöksensä raporttimuodossa, joka on ymmärrettävä henkilölle jolla on vastaavat taidot takaisinmallintamisesta.

Opintojakson osaamiset
EUR-ACE: Tieto ja ymmärrys
- Tieto ja ymmärrys oman erikoistumisalan perustana olevista insinööritieteistä tasolla, joka on tarpeen ohjelman muiden oppimistulosten saavuttamiseksi, mukaan lukien käsitys tulevaisuuden vaatimuksista omalla alalla.
- Tieto ja ymmärrys soveltuvista materiaaleista, laitteista, työvälineistä, teknologioista ja prosesseista sekä niiden rajoituksista omalla erikoistumisalalla.
- Tieto ja ymmärrys soveltuvista analyysi-, suunnittelu- ja tutkimus/kehittämistekniikoista ja -menetelmistä sekä niiden rajoituksista omalla erikoistumisalalla.
EUR-ACE: Tekniikan soveltaminen käytäntöön
- Kyky tunnistaa, muotoilla ja ratkaista monimutkaisia ongelmia kyeten valitsemaan ja omaten käytännön taidot soveltaa tilanteeseen soveltuvia, vakiintuneita analyyttisiä, laskennallisia ja kokeellisia tekniikoita ja menetelmiä.
- Kyky selvittää oman alan ammattikäytän-töä koskevat ohjeet ja turvallisuus-määräykset sekä soveltaa niitä.
EUR-ACE: Monialainen osaaminen
- Tietoisuus insinöörin ammattikäytännön yhteiskunnallisista, työsuojeluun ja ympäristöön liittyvistä, taloudellisista ja teollisista vaikutuksista sekä ymmärrys niiden asettamista rajoituksista.

Sisältö

Kurssilla käydään ohjelmien dynaamiseen ja staattiseen analyysiin sekä takaisinmallintamiseen käytettäviä menetelmiä. Kurssilla suoritetaan labratehtäviä, joissa opittuja asioita hyödynnetään.

Oppimateriaali ja suositeltava kirjallisuus

Verkko-oppimisympäristössä julkaistava sähköinen materiaali, sekä kirja: Practical Malware Analysis: The Hands-On Guide to Dissecting Malicious Software

Opetusmenetelmät

- luennot
- itseopiskelu
- verkko-opinnot
- webinaarit
- harjoitustyöt
- oppimistehtävät
- kirja

Tenttien ajankohdat ja uusintamahdollisuudet

Ei tenttiä, arviointi perustuu tehtävä suorituksiin.

Vaihtoehtoiset suoritustavat

Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.

Opiskelijan ajankäyttö ja kuormitus

Yksi opintopiste (1 op) tarkoittaa keskimäärin 27 tunnin työtä.

- luennot 8 h
- harjoitustyöt 60 h
- itsenäinen työskentely 51 h
- lukeminen ja viikottaiset kyselyt 16 h
Yhteensä 135 h

Lisätietoja opiskelijoille

Pisteitä viikottaisista kyselyistä ja tehtävistä. Ei tenttiä.

Arviointiasteikko

0-5

Arviointikriteerit, tyydyttävä (1-2)

Välttävä (1): Opiskelija on tietoinen kurssilla käydyistä perusasioista. Opiskelija pystyy tekemään avustettuna vain yksinkertaista analyysiä x86 binääreille käyttäen joitain kurssilla opetettuja työkaluja.

Tyydyttävä (2): Opiskelija ymmärtää kurssilla käydyt perusasiat, mutta hän ei kykene hyödyntämään tätä tietoa. Opiskelija ei pysty etsimään aiheeseen liittyvää tietoa itsenäisesti. . Opiskelija pystyy tekemään avustettuna vain yksinkertaista analyysiä x86 binääreille käyttäen joitain kurssilla opetettuja työkaluja.

Arviointikriteerit, hyvä (3-4)

Hyvä (3): Opiskelija ymmärtää tärkeimmät aiheet kurssilta ja pystyy käyttämään tätä tietoa yksinkertaisimmissa tapauksissa. Opiskelija pystyy analysoimaan yksinkertaisia x86 binääreitä käyttämällä kurssilla opetettuja työkaluja ja menetelmiä.

Kiitettävä (4): Opiskelija ymmärtää tärkeimmät aiheet kurssilta ja pystyy käyttämään tätä tietoa yleisissä tapauksissa. Opiskelija pystyy etsimään ja ymmärtämään ja tietoa käsitellyistä aiheista. Opiskelija kykenee x86 binäärien itsenäiseen analyysin käyttäen kurssilla käytyjä työkaluja ja menetelmiä.

Arviointikriteerit, kiitettävä (5)

Erinomainen (5): Opiskelija ymmärtää kaikki kurssillakäydyt asiat ja kykenee hyödyntämään niitä innovatiivisesti myös haastavissa tapauksissa. Opiskelija kykenee etsimään ja hyödyntämään tietoa kurssilla käydyistä aiheista itsenäisesti. Opiskelija kykenee analysoimaan yksinkertaisia x86 ohjelmia itsenäisesti käyttäen kurssilla käytyjä työkaluja ja menetelmiä ja kykenee käyttämään laajasti käytettyjä työkaluja, joita ei käsitelty kurssilla.

Esitietovaatimukset

ohjelmoinnin perusteet, käyttöjärjetelmät, tietorakenteet ja algoritmit