Ohjelmistohaavoittuvuudet ja niiden hyväksikäyttö (5 op)
Toteutuksen tunnus: TTC6520-3002
Toteutuksen perustiedot
- Ilmoittautumisaika
-
01.08.2023 - 24.08.2023
Ilmoittautuminen toteutukselle on päättynyt.
- Ajoitus
-
30.10.2023 - 19.12.2023
Toteutus on päättynyt.
- Opintopistemäärä
- 5 op
- Lähiosuus
- 1 op
- Virtuaaliosuus
- 4 op
- Toteutustapa
- Monimuoto-opetus
- Yksikkö
- Teknologiayksikkö
- Toimipiste
- Lutakon kampus
- Opetuskielet
- englanti
- Paikat
- 0 - 35
- Koulutus
- Tieto- ja viestintätekniikka (AMK)
- Bachelor's Degree Programme in Information and Communications Technology
- Opettajat
- Joonatan Ovaska
- Ryhmät
-
TTV21S3Tieto- ja viestintätekniikka (AMK)
-
TTV21S5Tieto- ja viestintätekniikka (AMK)
-
TIC21S1Bachelor's Degree Programme in Information and Communications Technology
-
TTV21S2Tieto- ja viestintätekniikka (AMK)
-
TTV21S1Tieto- ja viestintätekniikka (AMK)
- Opintojakso
- TTC6520
Arviointiasteikko
0-5
Tavoitteet
The student is aware of the most common application vulnerabilities and how they affect new and existing applications. The student is also able to find, exploit and fix common application vulnerabilities. The student is also familiar with safety mechanisms built into modern operating systems to make exploitation more difficult.
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ä.
Sisältö
The course will cover most common application vulnerabilities, what causes them, how they are exploited and how to fix or mitigate them. Basic knowledge of C or C++ and data structures and algorithms is required. Knowledge of one scripting language (e.g. Python) is recommended.
Aika ja paikka
- Ensimmäinen kontakti läsnä, loput etänä.
- Ohjaukset läsnä.
Oppimateriaalit
Verkko-oppimisympäristössä julkaistava sähköinen materiaali, sekä kirja: Hacking : the art of exploitation 2nd edition
Opetusmenetelmät
- luennot
- itseopiskelu
- verkko-opinnot
- webinaarit
- harjoitustyöt
- oppimistehtävät
- kirja
Tenttien ajankohdat ja uusintamahdollisuudet
Ei tenttiä, arviointi perustuu tehtävä suorituksiin.
Toteutuksen valinnaiset 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 15 h
- demot ja läpikäynnit 15 h
- harjoitustyöt 45 h
- itsenäinen työskentely 55 h
Yhteensä 135 h
Arviointikriteerit, tyydyttävä (1)
Satisfactory (2): The student understands the most basic topics discussed during the course, however, struggles to utilize this knowledge.
Sufficient (1): The student is familiar with the basic topics discussed during the course. He is able to solve problems related to the topics only in the simplest of cases.
Fail 0: The student does not meet the minimum criteria set for the course.
Arviointikriteerit, hyvä (3)
Very good (4): The student understands the most important topics discussed during the course and is able to utilize this knowledge in the most common cases.
Good (3): The student understands the most important topics discussed during the course and is able to utilize this knowledge in the most basic cases.
Arviointikriteerit, kiitettävä (5)
Excellent (5): The student understands all topics discussed during the course and is able to use them in an innovative manner even in challenging cases.
Esitietovaatimukset
Basics in programming, Data structures and algorithms
Lisätiedot
Pisteitä kerrytetään tehtävistä. Ei tenttiä.