Skip to main content

Software Exploitation (5 op)

Toteutuksen tunnus: TTKW0220-3001

Toteutuksen perustiedot


Ilmoittautumisaika

04.01.2021 - 15.01.2021

Ajoitus

29.03.2021 - 30.04.2021

Opintopistemäärä

5 op

Virtuaaliosuus

5 op

Toteutustapa

Verkko-opetus

Yksikkö

School of Technology

Toimipiste

Lutakko Campus

Opetuskielet

  • Englanti

Paikat

0 - 32

Koulutus

  • Bachelor's Degree Programme in Information and Communications Technology

Opettaja

  • Mikko Neijonen

Vastuuopettaja

Joonatan Ovaska

Ryhmät

  • TTV21VK
    Tieto- ja viestintätekniikka (AMK), vaihto-opiskelu/Exchange studies
  • TTV18S1
    Tieto- ja viestintätekniikka

Objectives

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.

Content

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.

Time and location

Viiden viikon intensiivinen kurssi alkaen viikolla 12

Learning materials and recommended literature

Hacking: The Art Of Exploitation, 2nd Edition (Erickson, Jon)

Teaching methods

- luennot
- itseopiskelu
- pienryhmätyöskentely
- harjoitustyöt

Alternative completion methods

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

Student workload

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

- luennot 10 h
- tehtävät 65 h
- itsenäinen työskentely 33 h
Yhteensä 135 h

Evaluation scale

0-5

Evaluation criteria, satisfactory (1-2)

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.
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.
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.

- The course is graded based on the exam and labs.

Prerequisites

Basics in programming, Data structures and algorithms