This is a list of possible available topis suitable for MSc, BSc, or simple semester projects. Each project is adjustable according to the student skills. However, to ensure a fruitful interaction, and make your project really worthy, I strongly recommend you read the general prerequisite here below, and then the topic description. If any of the following idea attracts you, or something is unclear, do not hesitate to contact me at flavio.toffalini@rub.de. I am also open to projects spontaneously proposed by student as long as they adhere to my research area: software analysis, vulnerability analysis, mitigation, system security.
Every topic requires specific skills. However, for smooth collaboration, students must have a basic understanding of Linux OS, Git, and bash programming. I assume you have a good knowledge of Python, which is a fundamental Swiss Army knife for many tasks. Depending on the project, you may also be required to learn specific tools, skills, or technologies, such as C/C++, LLVM, reverse engineering, or fuzzing.
The following topics serve as an indication of my areas of interest. Many of them can be combined if we identify a feasible project. Think of this list as a menu; if you find something you're already familiar with, feel free to email me, and we can discuss it. As a rule of thumb, combining topics generally increases project difficulty.