Skip to main content

NOTICE: Due to a lapse in annual appropriations, most of this website is not being updated. Learn more.

Form submissions will still be accepted but will not receive responses at this time. Sections of this site for programs using non-appropriated funds (such as NVLAP) or those that are excepted from the shutdown (such as CHIPS and NVD) will continue to be updated.

U.S. flag

An official website of the United States government

Official websites use .gov
A .gov website belongs to an official government organization in the United States.

Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

Defeating Buffer Overflow: One of the Most Trivial and Dangerous Bugs of All!

Published

Author(s)

Paul E. Black, Irena Bojanova

Abstract

The C programming language was invented over 40 years ago. It is infamous for buffer overflows. We have learned a lot about computer science, language design, and software engineering since then. As it is unlikely that we will stop using C any time soon, we present some ways to deal with buffer overflows. By the way, many of these techniques are useful for other programing languages and other classes of vulnerabilities.
Citation
IEEE IT Professional
Volume
18
Issue
6

Keywords

software weaknesses, software vulnerabilities, buffer overflow, testing

Citation

Black, P. and Bojanova, I. (2016), Defeating Buffer Overflow: One of the Most Trivial and Dangerous Bugs of All!, IEEE IT Professional, [online], https://doi.org/10.1109/MITP.2016.117, https://tsapps.nist.gov/publication/get_pdf.cfm?pub_id=921507 (Accessed October 2, 2025)

Issues

If you have any questions about this publication or are having problems accessing it, please contact [email protected].

Created October 31, 2016, Updated November 17, 2021
Was this page helpful?