Making C Less Dangerous - Kees Cook, Google
Making C Less Dangerous - Kees Cook, Google
With the kernel written in C, it comes with some worrisome baggage, "undefined" behaviors, and other weaknesses that lead to security flaws and vulnerable infrastructure. Some of these weaknesses related to the design of chipsets and how close C is to machine code, but others are less specific.
This presentation will explore the areas where the kernel is changing the C standard, defining undefined behaviors, or otherwise reorganizing things to make C itself less of a hazard.
Specifically this will cover removing (and enforcing the lack of) Variable Length Arrays in kernel code, forcing all stack variables to be initialized with a GCC plugin, performing implicit bounds checking with overloaded builtins, handling arithmetic overflows safely, and protecting forward (call) and reverse (return) indirect function calls with CFI under Clang.
About Kees Cook
Kees Cook has been working with Free Software since 1994, and has been a Debian Developer since 2007. He is currently employed as a Linux kernel security engineer by Google, working on Android and and Chrome OS. From 2006 through 2011 he worked for Canonical as the Ubuntu Security Team's Tech Lead, and remains on the Ubuntu Technical Board. Before that, he worked as the lead sysadmin at OSDL, before it was the Linux Foundation. He has written various utilities including GOPchop and Sendpage, and contributes randomly to other projects including fun chunks of code in OpenSSH, Inkscape, Wine, MPlayer, and Wireshark. He's been spending most of his time lately focused on security features in the Linux Kernel.
Видео Making C Less Dangerous - Kees Cook, Google канала The Linux Foundation
With the kernel written in C, it comes with some worrisome baggage, "undefined" behaviors, and other weaknesses that lead to security flaws and vulnerable infrastructure. Some of these weaknesses related to the design of chipsets and how close C is to machine code, but others are less specific.
This presentation will explore the areas where the kernel is changing the C standard, defining undefined behaviors, or otherwise reorganizing things to make C itself less of a hazard.
Specifically this will cover removing (and enforcing the lack of) Variable Length Arrays in kernel code, forcing all stack variables to be initialized with a GCC plugin, performing implicit bounds checking with overloaded builtins, handling arithmetic overflows safely, and protecting forward (call) and reverse (return) indirect function calls with CFI under Clang.
About Kees Cook
Kees Cook has been working with Free Software since 1994, and has been a Debian Developer since 2007. He is currently employed as a Linux kernel security engineer by Google, working on Android and and Chrome OS. From 2006 through 2011 he worked for Canonical as the Ubuntu Security Team's Tech Lead, and remains on the Ubuntu Technical Board. Before that, he worked as the lead sysadmin at OSDL, before it was the Linux Foundation. He has written various utilities including GOPchop and Sendpage, and contributes randomly to other projects including fun chunks of code in OpenSSH, Inkscape, Wine, MPlayer, and Wireshark. He's been spending most of his time lately focused on security features in the Linux Kernel.
Видео Making C Less Dangerous - Kees Cook, Google канала The Linux Foundation
Показать
Комментарии отсутствуют
Информация о видео
Другие видео канала
Keynote: Spectre, Meltdown, & Linux - Greg Kroah-Hartman, Fellow, The Linux FoundationC in 100 SecondsReplace Your Exploit-Ridden Firmware with Linux - Ronald Minnich, GoogleKeeping strcpy and memcpy straight when copying memory.FreeBSD and the absurdities of security complianceLinux Kernel Developer Work Spaces: Jes Sorensen, Red HatTutorial: Building the Simplest Possible Linux System - Rob Landley, se-instruments.comThe Story of LinuxRust in 100 SecondsYAML is for Computers. ksonnet is for Humans - Bryan Liles, Heptio (Any Skill Level)LinuxFest Northwest 2019: Deep Dive into firecracker-containerdReal Time is Coming to Linux; What Does that Mean to You? - Steven Rostedt, VMwareArguing with Linus Torvalds - Steven RostedtRustLatam 2019 - Niko Matsakis: What's unique about Rust?But Mummy I don't want to use CUDA - Open source GPU computeLife Behind the Tinfoil: A Look at Qubes and Copperhead - Konstantin Ryabitsev, The Linux Foundation"Kernel hacking like it's 2020" - Russell Currey (LCA 2020)Linux Kernel Developer Work Spaces: Stephane GraberUsing eBPF to Bring Kubernetes-Aware Security to the Linux Kernel - Dan Wendlandt, Isovalent