AddressSanitizer, or How to Make C/C++ Programs More Reliable and Secure
summary
AddressSanitizer is presented as a tool for making C/C++ programs more reliable and secure by detecting memory errors. The talk covers how AddressSanitizer works, its integration into build systems and toolchains, and practical usage for finding and fixing bugs like buffer overflows and use-after-free in C/C++ code.
AI-written summary · about
chapters (26)
- 0:00AddressSanitizer intro
- 1:08Why C/C++ matters
- 3:39Memory errors in C/C++
- 5:26Limitations of tools
- 7:34What is AddressSanitizer
- 8:15AddressSanitizer with Clang
- 9:41Features and speed
- 11:04Live demo with Chrome
- 12:27Buffer overflow detection
- 13:30Stack overflow detection
- 13:57Use-after-free errors
- 14:40Q&A
- 15:03Firefox and AddressSanitizer
- 16:34Performance impact
- 17:59Memory quarantine
- 19:06Shadow memory
- 25:11Library functions and shadow memory
- 26:38Handling libc functions
- 27:01Chrome bug findings
- 28:04Server-side bug detection
- 28:46Open source adoption
- 29:07Future improvements
- 30:11Summary
- 30:57Other sanitizers
- 31:39ThreadSanitizer and MemorySanitizer
- 32:27Final Q&A
related talks
01h 29mAddressSanitizer on Windows
50mAddressSanitizer/ThreadSanitizer for Linux Kernel
01h 00mSanitize for your Sanity: Sanitizers tools for Modern C++
01h 02mSanitize your C++ code
49mTeaching Containers and Allocators How to Sanitize Addresses
59mBeyond Sanitizers...
06mLightning Talk: You Should Use AddressSanitizer
36mCode Analysis: Empowering developers to write performant, reliable, and safe C++
