Analyzing String Buffers in C

Simon, A. and King, A. (2002) Analyzing String Buffers in C. In: International Conference on Algebraic Methodology and Software Technology, September 2002.

PDF
Download (368Kb)
[img]
Preview
Postscript
Download (409Kb)
[img]
Preview

Abstract

A buffer overrun occurs in a C program when input is read into a buffer whose length exceeds that of the buffer. Overruns often lead to crashes and are a widespread form of security vulnerability. This paper describes an analysis for detecting overruns before deployment which is conservative in the sense that it locates every possible buffer overrun. The paper details the subtle relationship between overrun analysis and pointer analysis and explains how buffers can be modeled with a linear number of variables. As far as we know, the paper gives the first formal account of how this software and security problem can be tackled with abstract interpretation, setting it on a firm, mathematical basis.

Item Type: Conference or workshop item (Paper)
Additional information: Also see http://www.springer.de/comp/lncs/index.html
Uncontrolled keywords: abstract interpretation, C, buffer overflows
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Faculties > Science Technology and Medical Studies > School of Computing > Theoretical Computing Group
Depositing User: Mark Wheadon
Date Deposited: 24 Nov 2008 17:59
Last Modified: 06 Sep 2011 01:15
Resource URI: http://kar.kent.ac.uk/id/eprint/13750 (The current URI for this page, for reference purposes)
  • Depositors only (login required):