Module CS3207-KP04

Reverse Engineering Lab (RevEngPr)


Duration

1 Semester

Turnus of offer

each winter semester

Credit points

4

Course of studies, specific fields and terms:

  • Bachelor Computer Science 2019, optional subject, Extended optional subjects
  • Bachelor IT-Security 2016, optional subject, IT-Security

Classes and lectures:

  • Lab Reverse Engineering (practical course as compact course, 3 SWS)

Workload:

  • 60 hours private studies and exercises
  • 60 hours in-classroom work

Contents of teaching:

  • Introduction to Reverse Engineering (dynamic, static), Executables, Calling Conventions and API calls for a common OS like Windows
  • Settting up a Reverse Engineering System and use of free Reverse Engineering tools
  • Programing in Assembler
  • Perform structured program analysis
  • Add new functionality to existing programs
  • Handling of anti-reverse-engineering techniques

Qualification-goals/Competencies:

  • The students can explain basic reverse engineering methods and apply them to simple programs
  • The students know different techniques to make reverse engineering harder and can spot these during analysis
  • The students know commonly used API functions and are able to build simple applications in Assembler
  • The students can make specific changes in or add functionality to existing programs
  • The students can perform a structured analysis and document it appropiately

Grading through:

  • B-Certificate (not graded)

Responsible for this module:

Teacher:

Literature:

  • D. Andriesse : Practical Binary Analysis No Starch Press, 2019
  • B. Dang, A. Gazet, E. Bachaalany : Practical Reverse Engineering Wiley, 2014
  • C. Eagle : The Ghidra Book No Starch Press, 2020
  • E. Eilam : Reversing: Secrets of Reverse Engineering Wiley, 2005
  • M. Russinovich, D. Solomon, A. Ionescu : Windows Internals Part 2 6th Edition, Microsoft Press, 2012
  • M. Sikorski, A. Honig : Practical Malware Analysis No Starch Press, 2012
  • P. Yosifovich, A. Ionescu, M. Russinovich, D. Solomon : Windows Internals Part 1 7th Edition, Microsoft Press, 2017

Language:

  • offered only in English

Notes:

- Limited to 20 spots; mandatory participants will be given priority; remaining spots will be allocated on a first-come, first-served basis via Moodle

- Takes place as a three-week in-person block course outside the lecture period

- Course content will be presented using an operating system of the instructor’s choice

- Knowledge of C is an advantage, but a brief introduction will be provided at the beginning of the course

Prerequisites for enrolling in the module:
- None

Prerequisites for taking the module exam(s):
- Successful completion of exercise sheets (50% of the points), successful completion of the project assignment

Module exam(s):
- CS3207-L1 Reverse Engineering Practicum, practicum, 100% of the (non-existent) module grade

According to the decision of the Computer Science Examination Board dated May 15, 2023, this module may be selected by students in the Bachelor of Computer Science SGO program starting in 2019 within Area 6: Elective Required Courses.

Last Updated:

03.08.2026