ENSURING SAFE USAGE OF BUFFERS IN PROGRAMMING LANGUAGE C

Milena Vujosevic-Janicic

2008

Abstract

We consider the problem of buffer overflows in C programs. This problem is very important because buffer overflows are suitable targets for security attacks and sources of serious programs’ misbehavior. Buffer overflow bugs can be detected at run-time by dynamic analysis, and before run-time by static analysis. In this paper we present a new static, modular approach for automated detection of buffer overflows. Our approach is flow-sensitive and inter-procedural, and it deals with both statically and dynamically allocated buffers. Its architecture is flexible and pluggable — for instance, for checking generated correctness and incorrectness conditions, it can use any external automated theorem prover that follows SMT-LIB standards. The system uses an external and easily extendable knowledge database that stores all the reasoning rules so they are not hard-coded within the system. We also report on our prototype implementation, the FA D O tool, and on its experimental results.

Download


Paper Citation


in Harvard Style

Vujosevic-Janicic M. (2008). ENSURING SAFE USAGE OF BUFFERS IN PROGRAMMING LANGUAGE C . In Proceedings of the Third International Conference on Software and Data Technologies - Volume 1: ICSOFT, ISBN 978-989-8111-51-7, pages 29-36. DOI: 10.5220/0001891200290036

in Bibtex Style

@conference{icsoft08,
author={Milena Vujosevic-Janicic},
title={ENSURING SAFE USAGE OF BUFFERS IN PROGRAMMING LANGUAGE C},
booktitle={Proceedings of the Third International Conference on Software and Data Technologies - Volume 1: ICSOFT,},
year={2008},
pages={29-36},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0001891200290036},
isbn={978-989-8111-51-7},
}


in EndNote Style

TY - CONF
JO - Proceedings of the Third International Conference on Software and Data Technologies - Volume 1: ICSOFT,
TI - ENSURING SAFE USAGE OF BUFFERS IN PROGRAMMING LANGUAGE C
SN - 978-989-8111-51-7
AU - Vujosevic-Janicic M.
PY - 2008
SP - 29
EP - 36
DO - 10.5220/0001891200290036