μ-proteus contains all our research activities in software diversity. At present, there are three active research projects: (i) diversity to mitigate Address-Oblivious Code Reuse (AOCR) attacks, (ii) diversity to prevent RowHammer attacks, (iii) formalization and verification of software diversity.
Welcome to μCSRL, the Munich Computer Systems Research Laboratory!
μCSRL's mission is to conduct world-class research in hardening and enhancing security, privacy, and performance of programs through language-based transformations. Of key interest are both, compile-time (e.g., LLVM) and run-time techniques (e.g., just-in-time compilers and interpreters). Our goal is to apply these transformations in a fully automated and transparent way, i.e., without requiring source code annotations or modifications.
Research AreasμCSRL conducts research in the areas of systems and software security and programming languages. Of particular interest is the intersection of both areas, i.e., when and how programming language transformations can either be leveraged to increase security, or advanced optimization techniques provide a speedup that allows for enabling much more expensive security enhancing and hardening transformations. |
|
Security |
Programming Languages |
Our research focus in security is an area called language-based security. The goal is to use language-based transformations, such as compile-time transformations, to modify programs in a fully automatic and transparent fashion. Programs compiled with such transformations offer higher security with respect to a certain class of attacks. As a result, language-based security offers effectively cost-neutral, general protection of a large class of programs against multiple attack vectors. |
Our research focus in programming languages is two-fold: (i) a variety of optimization techniques, for compilers, interpreters, and just-in-time compilers, and (ii) drastically increasing the simplicity, and thereby costs, of constructing software. In the area of optimization techniques, we are specifically interested in optimizing high-level programming languages, exemplified by Python. In prior work, we were able to push performance of the native CPython interpreter up to five-fold. Current research will further increase this performance level by what we presently expect to be a final optimization factor of eight fold.
In the area of efficient, simple construction of non-trivial large-scale software, we are researching novel techniques in constructing browsers and search engines. Specifically, we seek to use meta-linguistic techniques available in the Racket programming language, paired with advanced compilation and optimization techniques, to address long-standing issues in software construction. We just started this research, which comprises almost all flavors of PL research, including type theory, state-of-the-art verification technology, formal methods, traditional optimization techniques, and---of course---implementation aspects in the form of a variety of domain-specific languages and their interaction. |
Active μCSRL research projects
The process of recovering source code from an executable program in binary form is called decompilation. μ-decompiler is a new decompilation technique that we will be able to provide more details during 2024.
ACSE is short for Airborne Cyber-Security Enhancement, a research project funded by Airbus' Defense & Space subsidiary. In ACSE, we analyze existing airborne software for security vulnerabilities and provide expertise on which defenses could be put in place.
The μ-python research project combines all our research efforts in optimizing interpreters.
μ-fuzz is a new project between the μCSRL and PATCH research group at the National Cyber Defense Research Institute CODE at UniBwM. Using a state-of-the-art 1000+ CPUs, the goal is to develop pioneering new automated vulnerability identification methods using a variety of fuzzing techniques. The project launches in Q1 of 2021, after the cluster becomes operational.