Malware (2017/2018)

Course code
Name of lecturer
Roberto Giacobazzi
Roberto Giacobazzi
Number of ECTS credits allocated
Academic sector
Language of instruction
II sem. dal Mar 1, 2018 al Jun 15, 2018.

Lesson timetable

Go to lesson schedule

Learning outcomes

The course aims to provide the theoretical and practical bases of the malevolent code. In particular, the course proposes techniques for the definition and classification of malicious code, analysis of malicious code and risk management.

At the end of the course, the student will have the necessary knowledge to understand the nature and evolution of the malicious code, anti-detection techniques and risk profiles. Furthermore, it will be able to perform reverse engineering of malicious code, identifying its essential components.

This knowledge will allow the student to classify the threats and their evolution deriving from malicious code based attacks.

The student will then be able to continue his/her studies autonomously in the field of computer security, studying new malicious codes and the respective countermeasures to mitigate their effects.


Malware definitions, Taxonomy, theoretical virology, Malware life cycle, polymorphism and metamorphism, code similarity and similarity analysis, android malware, bot net, logic bomb, worms.

Reference books
Author Title Publisher Year ISBN Note
Filiol, Eric Computer Viruses: from theory to applications Springer 2005 978-2-287-28099-3

Assessment methods and criteria

The students will be asked to produce home-works during the course and the reverse engineering of a given malware or the design of a new malware. Malware reverse engineering or the new malware design will be made by groups of at least 2 students and no more than 3 students. Students may freely choose which project do within the list proposed at the end of the course.