CISPA / 2.01
Stuhlsatzenhaus 5
66123 Saarbrücken (Germany)
2023: Distinguished Paper Award: IEEE S&P
Dr. Ali Abbasi is a tenure-track faculty at CISPA Helmholtz Center for Information Security. Previously, he was a Post-Doc researcher at the Chair of System Security at Ruhr-University Bochum and did his Ph.D. at the Eindhoven University of Technology. His research interests include embedded systems security, security of mission-critical real-time software, and secure space and automotive systems. He lead the Embedded Security group at CISPA, which develops and implements new methods to protect embedded systems against various classes of attacks, both on the hardware and firmware.
Network and Distributed System Security Symposium (NDSS)
Network and Distributed System Security Symposium (NDSS)
Security for Space Systems (3S)
Workshop on Security of Space and Satellite Systems (SpaceSec)
Usenix Security Symposium (USENIX-Security)
Re-Design Industrial Control Systems with Security (RICSS)
IEEE Symposium on Security and Privacy (S&P)
Usenix Security Symposium (USENIX-Security)
Eurosys Conference (EuroSys)
Foundations of Firmware Security
This course introduces students to the security of embedded systems, with a focus on identifying and analyzing firmware vulnerabilities. The course begins with core concepts in embedded systems and hardware communication protocols such as UART, SPI, and JTAG. Students will learn to extract and analyze firmware from real-world devices.
The curriculum then moves into reverse engineering of unknown binaries, teaching foundational techniques for recovering control and data structures. Tools such as Ghidra and QEMU are used for firmware emulation and reverse engineering. Students then explore vulnerability discovery through fuzzing and re-hosting techniques and learn to design or adapt fuzzers for analyzing embedded firmware. Additional topics include software vulnerabilities, side-channel analysis, and bug triaging. The course also includes a weekly hands-on tutorial session.
Instead of a written exam, students complete a final project report and oral exam, where they should demonstrate their skills by identifying 0-day vulnerabilities in embedded firmware.
Systems Security
In this course, important theoretical and practical aspects from the area of systems security are presented and discussed. The focus is on various aspects of software security and different attack and defense techniques are presented. More specifically, important attack methods (e.g., buffer overflows, race conditions, use-after-free, heap overflows, etc.) as well as defense strategies (e.g., non-executable memory, Address Space Layout Randomization, memory tagging, etc.) are discussed. Other topics of the lecture are fuzzing, symbolic execution, reverse engineering, obfuscation, and similar aspects of systems security.
At the end of the course, students should be able to analyze security aspects of various types of software systems, detect vulnerabilities in the design and implementation, and independently develop security mechanisms. In addition, other aspects from the area of systems security, such as fuzzing and security aspects of operating systems, will be discussed. An important part of the course are exercises, which illustrate and deepen the material with practical examples.
Reverse Engineering and Exploit Development for Embedded Systems
From critical infrastructure to consumer electronics, embedded systems are all around us and underpin the technological fabric of everyday life. As a result, the security of embedded systems is crucial to us.
Therefore, in this course, we will work toward understanding the fundamentals of developing software/hardware exploits against embedded systems. In this course. We will cover topics such as firmware extraction, modification, and different hardware serial protocols. We also cover topics such as exploit development for ARM-based embedded devices and write exploits for vulnerabilities such as uninitialized stack variables, off-by-one bugs, Use-after-free, and utilize techniques such as ROP, Signal-oriented programming, to attack embedded systems. We also attack micro-controllers and try to extract secrets from them by utilizing reverse-engineering techniques. Finally, we perform fuzz-testing on embedded firmware via re-hosting.
Hardware Security
Seminar Embedded Systems Security
From critical infrastructure to consumer electronics, embedded systems are all around us and underpin the technological fabric of everyday life. As a result, the security of embedded systems is crucial to us.
This seminar covers research papers addressing various topics in embedded systems security. This includes topics such as instruction profiling (template attack), fault injection and side-channel attacks, firmware static and dynamic analysis, intrusion detection in embedded systems, automotive/space systems security, and fuzzing embedded systems.