Daniel Felix Ritchie School of Engineering and Computer Science

Secure Coding in C

This course surveys the C language, which is notorious for having several weaknesses with regards to data typing, bounds checking, and memory management among others. Many of the exploits known regarding C code are reviewed, including weak data typing and overflows. Instructor Dan Gookin explains the vulnerabilities and offers information on how to defensively code around these exploits and vulnerabilities. Other areas covered include undefined behavior, avoiding awkward constructions, validating input, using proper data types, managing strings, memory management, and working with pointers.

Learn More