Master Thesis: Exploring Hardware-Assisted Type Safety in C++
Ericsson
Join our Team About this opportunity: Ericsson Research Security provides security expertise, architectures, and solutions for platforms, networks, and services. Its work spans areas including cryptography, secure networking, AI security, privacy, and software security. The project is hosted by Ericsson Research in Kista, within an international team working on software security, programming languages, and software reliability. C++ is widely used in performance-critical software, but its flexibility can make type safety difficult to guarantee. Type confusion, unsafe casts, and object-lifetime errors can lead to undefined behavior, invalid memory access, memory corruption, or control-flow hijacking. These risks are especially important in critical infrastructure, where vulnerabilities may affect essential services.This thesis will investigate how to strengthen protection against type-related vulnerabilities without restricting idiomatic C++ or adding prohibitive runtime overhead. You will examine software-based approaches such as TypeSan, EffectiveSan, and Type++, and assess whether hardware-assisted technologies such as CHERI and MTE can enable more efficient dynamic type enforcement. The goal is to explore a practical approach that addresses complex class hierarchies, inheritance, polymorphism, and dynamic type conversions while maintaining compatibility and performance. What you will do:
- Review and evaluate hardware-assisted technologies for enforcing language-level type safety in C++.
- Design a practical dynamic type-enforcement scheme for type-confusion risks in complex C++ programs.
- Build a proof of concept on a hardware-assisted platform.
- Evaluate security coverage, compatibility with existing software, and performance overhead.
- Master’s student in Computer Science, Cybersecurity, or a related field.
- Solid understanding of Linux processes and runtime security.
- Systems programming experience, preferably in C and C++; familiarity with assembly is an advantage.
- Curiosity, creativity, and interest in software security research.