Making C Less Dangerous

Making C Less Dangerous

Linux Foundation via YouTube Direct link

CFI, forward edges: enforce prototype :

16 of 21

16 of 21

CFI, forward edges: enforce prototype :

Class Central Classrooms beta

YouTube videos curated by Class Central.

Classroom Contents

Making C Less Dangerous

Automatically move to the next video in the Classroom when playback concludes

  1. 1 Intro
  2. 2 Kernel Self Protection Project
  3. 3 C as a fancy assembler almost machine code
  4. 4 C as a fancy assembler: undefined behavior
  5. 5 Variable Length Arrays are bad
  6. 6 Variable Length Arrays are slow
  7. 7 Switch case fall-through did I mean it?
  8. 8 Switch case fall-through: new statement
  9. 9 Switch case fall-through new statement
  10. 10 Always-initialized local variables: just do it
  11. 11 Always-initialized local variables switch gotcha
  12. 12 Arithmetic overflow detection Clang :
  13. 13 Bounds checking: explicit checking is slow
  14. 14 Bounds checking memory tagging :
  15. 15 Control Flow Integrity: indirect calls
  16. 16 CFI, forward edges: enforce prototype :
  17. 17 CFI, backward edges: two stacks
  18. 18 CFI, backward edges: shadow call stack . Clang's Shadow Cal Stack
  19. 19 CFI, backward edges: hardware support
  20. 20 Where is the Linux kernel now?
  21. 21 Challenges in Kernel Security Development

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.