This document discusses various techniques for auditing source code to discover vulnerabilities, including both automated and manual methods. It describes tools like Cscope, Ctags, and source code analysis tools. It also covers common classes of vulnerabilities that may be found through source code auditing, such as format string vulnerabilities, off-by-one errors, integer conversion issues, uninitialized variable usage, and race conditions in multithreaded code. Effective methodologies discussed include searching for specific vulnerable code patterns, understanding application logic from entry points, and focusing on attacker-controlled input handling.