Software ExploitationLaajuus (5 cr)
Course unit code: TTC6520
General information
- Credits
- 5 cr
- Teaching language
- Finnish
- English
- Responsible person
- Joonatan Ovaska
Objective
The student knows 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.
Competences
EUR-ACE: Knowledge and understanding
EUR-ACE: Engineering practice
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.
Qualifications
Basics in programming, Data structures and algorithms
Assessment criteria, satisfactory (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.
Assessment criteria, good (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.
Assessment criteria, excellent (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.