Value-Range Analysis of C Programs

Towards Proving the Absence of Buffer Overflow Vulnerabilities

Authors: Simon, Axel

  • Complete formal specification of a static analysis of a real-world programming language
  • New techniques to soundly handle the wrapping of integers, overlapping memory accesses and pointer arithmetic, thereby providing an analysis of C that is faithful to the bit-level
see more benefits

Buy this book

eBook $129.00
price for USA (gross)
  • ISBN 978-1-84800-017-9
  • Digitally watermarked, DRM-free
  • Included format: PDF
  • ebooks can be used on all reading devices
  • Immediate eBook download after purchase
Hardcover $169.00
price for USA
  • ISBN 978-1-84800-016-2
  • Free shipping for individuals worldwide
  • Usually dispatched within 3 to 5 business days.
Softcover $169.00
price for USA
  • ISBN 978-1-84996-702-0
  • Free shipping for individuals worldwide
  • Usually dispatched within 3 to 5 business days.
About this book

The use of static analysis techniques to prove the partial correctness of C code has recently attracted much attention due to the high cost of software errors - particularly with respect to security vulnerabilities. However, research into new analysis techniques is often hampered by the technical difficulties of analysing accesses through pointers, pointer arithmetic, coercion between types, integer wrap-around and other low-level behaviour. Axel Simon provides a concise, yet formal description of a value-range analysis that soundly approximates the semantics of C programs using systems of linear inequalities (polyhedra).

The analysis is formally specified down to the bit-level while providing a precise approximation of all low-level aspects of C using polyhedral operations and, as such, it provides a basis for implementing new analyses that are aimed at verifying higher-level program properties precisely. One example of such an analysis is the tracking of the NUL position in C string buffers, which is shown as an extension to the basic analysis and which thereby demonstrates the modularity of the approach.

While the book focuses on a sound analysis of C, it will be useful to any researcher and student with an interest in static analysis of real-world programming languages. In fact, many concepts presented here carry over to other languages such as Java or assembler, to other applications such as taint analysis, array and shape analysis and possibly even to other approaches such as run-time verification and test data generation.

Reviews

From the reviews:

"This book describes a static analysis that aims to prove the absence of buffer overflows in C programs. … The book formally describes how program operations are mapped to operations on polyhedra. … Many concepts presented here carry over to other languages such as Java or assembler. So it will be useful to any researcher and student with an interest in static analysis of real-world programming languages." (Stefan Meyer, Zentralblatt MATH, Vol. 1155, 2009)


Table of contents (15 chapters)

Buy this book

eBook $129.00
price for USA (gross)
  • ISBN 978-1-84800-017-9
  • Digitally watermarked, DRM-free
  • Included format: PDF
  • ebooks can be used on all reading devices
  • Immediate eBook download after purchase
Hardcover $169.00
price for USA
  • ISBN 978-1-84800-016-2
  • Free shipping for individuals worldwide
  • Usually dispatched within 3 to 5 business days.
Softcover $169.00
price for USA
  • ISBN 978-1-84996-702-0
  • Free shipping for individuals worldwide
  • Usually dispatched within 3 to 5 business days.
Loading...

Recommended for you

Loading...

Bibliographic Information

Bibliographic Information
Book Title
Value-Range Analysis of C Programs
Book Subtitle
Towards Proving the Absence of Buffer Overflow Vulnerabilities
Authors
Copyright
2008
Publisher
Springer-Verlag London
Copyright Holder
Springer-Verlag London
eBook ISBN
978-1-84800-017-9
DOI
10.1007/978-1-84800-017-9
Hardcover ISBN
978-1-84800-016-2
Softcover ISBN
978-1-84996-702-0
Edition Number
1
Number of Pages
XXII, 302
Number of Illustrations and Tables
119 b/w illustrations
Topics