Back To Schedule

The Bytes Before the Types

Unveiling Uninitialized Uses

16:30 - 17:30 Saturday 2nd March 2024 UTC
Intermediate
Safety

An in-depth exploration of a subtle aspect of systems programming: uninitialized memory. What are in the bytes before a type exists? This talk dives into the complex world of uninitialized variables, unraveling its mysteries and practical implications. We’ll discuss software security with concrete examples of security vulnerabilities such as information leaks, attacker-controlled values, and use-after-free; performance impact is then explained in-depth; finally, we’ll present mitigations and best practices. The talk delves into memory management on the stack and heap memory, explaining how uninitialized memory issues manifest in each.

View Slides

JF Bastien

Distinguished EngineerWoven by Toyota

JF is a distinguished engineer at Woven by Toyota. He chairs the evolution of the C++ programming language. JF has worked on a variety of compilers for a variety of programming languages, implementing language features, improving performance / security / safety, targeting novel architectures, and other fun things. See jfbastien.com