Chapter 3 Secure Programming

Table of Contents
3.1 Synopsis
3.2 Secure Design Methodology
3.3 Buffer Overflows
3.4 SetUID issues
3.5 Limiting your program's environment
3.6 Trust
3.7 Race Conditions
Contributed by Murray Stokely.

3.1 Synopsis

This chapter describes some of the security issues that have plagued UNIX® programmers for decades and some of the new tools available to help programmers avoid writing exploitable code.

This, and other documents, can be downloaded from

For questions about FreeBSD, read the documentation before contacting <[email protected]>.
For questions about this documentation, e-mail <[email protected]>.