Reverse EngineeringLaajuus (5 cr)
Code: TT00CE16
Credits
5 op
Teaching language
- English
- Finnish
Responsible person
- Joonatan Ovaska
Objective
After completing the course, the student understands the basic concepts of reverse engineering and is able to analyze and disassemble programs of the x86 architecture. The student also learns something about other architectures in use. The student understands both static and dynamic analysis and identifies the key factors between the two. The course also provides an insight into program structure, compiled code, and the necessary tools in the field of reverse engineering.
EUR-ACE Knowledge and understanding
You will know the basic methods of reverse engineering by applying theory and practice. You will understand the meaning of these when you implement reverse engineering.
EUR-ACE Engineering practice
You can analyze methods related to reverse engineering applying practice and theory
Content
In this course, you will learn the basic concepts of reverse engineering and how to analyze and decompile programs for the x86 architecture. You will also gain some knowledge of other architectures in use. You will understand both static and dynamic analysis and recognize the key factors between them. The course provides insights into program structure, compiled code, and the necessary tools in the field of reverse engineering.
Understanding of x86 architecture and other architectures
Static analysis of the code of already compiled programs via disassembly
Executable file formats
System calls (system calls) and interrupts (interrupts)
Win 32API and related system calls
Use of tools suitable for reverse engineering
Qualifications
Data structures and algorithms
Basics of programming
Auditing and Penetration Testing
Assessment criteria, satisfactory (1)
Sufficient (1)
The student knows and understands the basic concepts of reverse engineering and the related theory. The student knows how to use the tools used in reverse engineering with assistance.
Satisfactory (2)
The student knows and understands the basic concepts of reverse engineering and the related theory. The student knows how to use the tools used in reverse engineering in a guided manner.
Assessment criteria, good (3)
Good (3)
The student knows and understands the basic concepts of reverse engineering and the related theory in a versatile way. The student knows how to use the tools used in reverse engineering.
Very good (4)
The student knows and understands the concepts of reverse engineering and the related theory in a versatile way. The student knows how to use the tools used in reverse engineering in an advanced manner.
Assessment criteria, excellent (5)
Excellent (5)
The student knows and understands the concepts of reverse engineering and the related theory excellently. The student knows how to use appropriate tools used in reverse engineering in an advanced manner and is able to use new tools independently.