Buffer
Overflow Causes. ©2002, Jedidiah R. Crandall, Susan L. Gerhart, Jan G.
Hogle.
http://sfsecurity.pr.erau.edu
Off-by-one errors
In C, if you create a
buffer that will hold 100 bytes then it will only hold 99 ASCII characters
(other than
the NULL character at the end) , the 99th character being indexed with the number 98. This can lead to a lot of confusion even for
seasoned C programmers
who do bounds checking. This can lead to a small amount
of data corruption or even a program crash.