E-mail senden E-Mail Adresse kopieren

E-Mail

Telefon

Adresse

Stuhlsatzenhaus 5
66123 Saarbrücken (Germany)

Weitere Informationen

Kurzbiografie

Ali Abbasi ist Tenure-Track Faculty am CISPA Helmholtz-Zentrum für Informationssicherheit in Saarbrücken. Er war Post-Doc am Lehrstuhl für Systemsicherheit der Ruhr-Universität Bochum und erwarb seinen Doktortitel an der Technischen Universität Eindhoven. Seine Forschungsinteressen umfassen die Sicherheit eingebetteter Systeme, die Sicherheit unternehmenskritischer Echtzeitsoftware und sichere Raumfahrt- und Automobilsysteme. Er leitet die Gruppe für eingebettete Sicherheit am CISPA, die neue Methoden zum Schutz eingebetteter Systeme gegen verschiedene Arten von Angriffen auf Hardware und Firmware entwickelt und umsetzt.

CV: Letzte vier Stationen

Seit Sept. 2022
Tenure-Track Faculty am CISPA Helmholtz-Zentrum für Informationssicherheit
Mai 2021 – Aug. 2022
Senior CarIT Security Architect bei Mercedes-Benz AG
Jan. 2019 – Apr. 2021
Postdoctoral Student an der Ruhr Universität Bochum
Nov. 2017 – Okt. 2018
PhD Student an der Eindhoven University of Technology

Veröffentlichungen von Ali Abbasi

Jahr 2023

Konferenz / Medium

UNSPECIFIED
IEEE Symposium on Security and PrivacyIEEE Symposium on Security and Privacy

Jahr 2022

Konferenz / Medium

USENIX-Security
USENIX Security SymposiumUSENIX Security Symposium (USENIX Security), 2022.

Konferenz / Medium

USENIX-Security
USENIX Association31st USENIX Security Symposium (USENIX Security 22)

Konferenz / Medium

EuroSys
EuroSys 2022EuroSys 2022

Lehre von Ali Abbasi

Summer 2022/23

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.

 

 


Prerequisites

Do not register directly, before contacting us (abbasi@cispa.de). While we do not have a formal registration requirement, it is absolutely essential that you only apply for this course when you already passed the system security course, or have a very strong background in system security. There is a high probability that you fail the course if you do not have such a background. It is not worth it, do not try.

  • You should have experience in systems-oriented programming. In addition, it helps if you have experience in the C programming language to understand some of the topics, Python is helpful as well.
  • You should have a basic understanding of operating systems (e.g., memory management, scheduling, etc.).
  • You should be familiar with Linux.

Time and Location and structure

The lecture will take place in two weeks from 28 August to 1st September and 4th to 8th September. There will be lectures in the morning followed by practical exercises in the afternoon. The exam will be the week after on 13th September.


Grading

To pass the course, you must score at least 50% on the final oral exam. In the final exam, you can reach 100 points, so you need to achieve at least 50 points in the final exam to pass the course. To be admitted to the exam, you must achieve at least 50% of the points from the exercises.

You will typically have the task of exploiting a vulnerable program to extract a secret flag.

 

  • Strict no cheating policy
    You may discuss the assignments with other students, but you are not allowed to collaborate with others on the solution. Your solution should be original and not an existing solution (e.g., from someone else or from the internet). All submissions will be automatically checked for plagiarism, as we have a strict no-cheating policy. If we find a case of plagiarism, we will assign zero points. If you ever get stuck, you can ask questions in the forum or participate in the exercise lessons. We invite you to help fellow students who have asked questions but avoid giving away the solution. Nobody likes spoilers :)

 

 

Oral Exam

At the end of the semester, there will be an oral exam for a duration of 30 minutes. All questions of the exam are in English.


Registration

Register for the course here in the CISPA CMS pending prior communication.

Summer 2022/23

Hardware Security

Secure software needs a reliable and truthworthy hardware. As a result, a secure hardware is crucial to build secure system.
This seminar covers research papers addressing various topics in hardware security. This includes topics such as hardware trojans, hardware side-channel, security hardware extensions, external memory security, security of hardware-based secure envlaves, hardware testing and hardware watermarking and counterfeit detection.

 

Organisation

The seminar is structured into three parts:

  • You will write a short survey paper on the main topic of your assigned papers category.
  • You present a paper or group of papers of a specific topic on hardware security individually. Others will prepare questions about the topic.
  • You review two survey paper of others and raise questions about them.
  • You improve your original survey results based on the feedback from the reviewers.

 

Survey

You will be assigned a topic (related to your assigned paper) for which you will read and summarize the current research in a survey paper. (6 pages).  The resulting survey papers will undergo a peer review process similar to academic conferences.

 

Presentation

Each participant will read up a paper and give an overview presentation about it. Other individuals should also read the paper and prepare research questions about the paper and a one page description of the paper. Students then will discuss limitations and open issues given the previously conducted work.

 

 

Review

Each participant will read two survey paper and write a review about it. The reviewer then decides if the paper should get accepted or rejected.

 

Important Dates

  • Kick off meeting and paper assignments: TBA
  • Submission of survey paper: TBA
  • Submission of reviews: TBA
  • PC Meeting: TBA
  • Final Submission (in case your survey paper get a shepherd)

 

 

Deliverables

  • Final survey paper (40 % of your final grade)
  • Reviews (20 % of your final grade)
  • Presentation (40 % of your final grade)
 
Winter 2021/22

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.

For the first time, we offer a seminar on "Embedded Systems Security". 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 systems security, and fuzzing embedded systems.

The seminar is organized similarly to a scientific conference. In addition to writing a summary of a particular topic, students also learn about the peer-review process: An important aspect of the seminar is constructive feedback on other students' reports, e.g., in the form of suggestions on how to improve the writing and presentation. Students should then also use this feedback to improve their own text.

The students get to know methods in research-related teaching and are able to study a closely defined topic on their own based on scientific literature. The students learn to understand technical literature on a specific topic and obtain insights into current research topics. The students can practice writing scientific texts and the summary of complex subject areas. The students learn more about the peer-review process and scientific work in general. Furthermore, the talk enables students to learn to present scientific results and deepen the subject.

Topics

The list of topics and papers for this year's seminar can be found here.

Important Dates

  • Kick off meeting and paper assignments: 10.11.2022, CISPA 0.01, 12:30 - 14:00 (Every week Thursday from 12:30 to 14:00)
  • Submission of survey paper: 9th February 2023
  • Submission of reviews: 22th February 2023
  • PC Meeting: 23th February 2023

Deliverables

  • Final survey paper (40 % of your final grade)
  • Reviews (20 % of your final grade)
  • Presentation (40 % of your final grade)
Winter 2021/22

Systems Security

About the course

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 overflowsrace conditionsmicroarchitectural attacks, etc.) as well as defense strategies (e.g., non-executable memoryAddress Space Layout Randomization, memory tagging, etc.) are discussed. Other topics of the lecture are fuzzing, 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 privacy and anonymity, will be discussed. An important part of the course are exercises, which illustrate and deepen the material with practical examples.

At the end of the class, the students know important theoretical and practical aspects of security mechanisms of modern software systems. They are able to independently analyze the security of a given program, detect vulnerabilities in the design, and independently develop possible solutions and protective mechanisms. In addition, they have become familiar with basic terms from the field of systems security. They are able to create new security models themselves and defend them argumentatively. 
 


Prerequisites

There are no formal prerequisites for this course. However, if you want to participate, please take the following aspects into account:

  • You should have experience in systems-oriented programming. In addition, it helps if you have experience in the C programming language to understand some of the topics, Python is helpful as well.
  • You should have a basic understanding of operating systems (e.g., memory management, scheduling, etc.).
  • You should be familiar with Linux, as the exercises are based on a remote exercise framework that is accessible via SSH.

Background in security is also an advantage (e.g., prior participation in the Foundations of Cybersecurity lecture or Security core lecture). However, we will also cover several relevant aspects as part of the lectures.
 


Time and Location

The lecture will take place every Wednesday from 12:00-14:00 o'clock, starting on October 20, 2021. The lecture will be offered in a hybrid format: we will have regular lectures in the CISPA lecture hall (0.05) and also record the lectures. The exercises will be offered via Zoom, you can find more information on the page "Access to lectures".
 


Grading

For passing the course, you need to obtain at least 50% of the points from the final exam. For admission to the exam, you need to obtain at least 50% of the points from the exercises (120 points). The final grade is based on your exam results only. More details can be found below:
 

Assignments

During the semester, there will be seven assignments with a total of 240 points. You need at least 50% in total (120 points) to be admitted to the exam. The assignments cover the topics discussed in the lectures and aim to deepen your knowledge of the topics. We encourage you to solve these assignments because this helps to understand the topics covered in the lectures.

Assignments have to be submitted individually, no group work is allowed. A submission typically consists out of a theoretical and practical part. Submit solutions to all theoretical tasks (e.g., questions, charts to fill out, etc.) in a single PDF file. For all practical tasks, we have prepared a remote environment equipped with all necessary tools and materials. Practical tasks are solved and submitted directly within this environment. Check the Remote Exercise Framework (REF) PDF for more information. These practical exercises are designed like CTF challenges. You will typically be tasked to exploit a vulnerable program to extract a secret flag.

  • Strict no cheating policy
    You can discuss the assignments with other students, but you are not allowed to collaborate on the solution with anyone. Your solution should be original and not be an existing solution (e.g., from someone else or from the Internet). All submissions will be automatically checked for plagiarism, we have a strict no-cheating policy. If we detect a case of plagiarism, we will assign zero points. If you are stuck at some point, you may ask questions in the forum or join the digital consultation-hours. We invite you to help fellow students that asked questions but avoid giving away the solution. Nobody likes spoilers :)
  • Solutions
    We will upload solutions for all assignments but the concise nature of solutions can be insufficient to answer all your questions. We recommend you use the forum or join the digital consultation-hour if you have questions.
  • Writing Assignments
    To simplify grading assignments, we only accept digital not handwritten solutions. We recommend using LateX for these tasks. An example template can be found here. If you need an introduction to Latex, the overleaf documentation is a good starting point.

 

Written Exam

At the end of the semester, there will be a written exam. The exact date and time will be announced once the information is available. Note that physical presence is required for the exam. The exam consists of both theoretical questions and practical questions. Theoretical questions are based on the theoretic parts and concepts of the slides and possibly additional content presented in the lecture, which is not part of the slides. Practical questions are, in principle, similar to the practical assignments. However, the complexity of the questions is of course scaled to make them adequate for the time available during an exam (e.g., you are not expected to implement a longer piece of assembler code). If you have at least 50% of the points, you will pass the class.

All questions of the exam are in English. Answers can be given either in English or in German, at the student’s discretion.

No lecture notes or any other materials are allowed during the exam. All materials required to solve the practical questions are provided at the exam.