String Analysis for Software Verification and Security (eBook)

eBook Download: PDF
2018 | 1st ed. 2017
IX, 174 Seiten
Springer International Publishing (Verlag)
978-3-319-68670-7 (ISBN)

Lese- und Medienproben

String Analysis for Software Verification and Security - Tevfik Bultan, Fang Yu, Muath Alkhalaf, Abdulbaki Aydin
Systemvoraussetzungen
69,54 inkl. MwSt
  • Download sofort lieferbar
  • Zahlungsarten anzeigen

This book discusses automated string-analysis techniques, focusing particularly on automata-based static string analysis. It covers the following topics: automata-bases string analysis, computing pre and post-conditions of basic string operations using automata, symbolic representation of automata, forward and backward string analysis using symbolic automata representation, constraint-based string analysis, string constraint solvers, relational string analysis, vulnerability detection using string analysis, string abstractions, differential string analysis, and automated sanitization synthesis using string analysis.

String manipulation is a crucial part of modern software systems; for example, it is used extensively in input validation and sanitization and in dynamic code and query generation. The goal of string-analysis techniques and this book is to determine the set of values that string expressions can take during program execution. String analysis can be used to solve many problems in modern software systems that relate to string manipulation, such as: (1) Identifying security vulnerabilities by checking if a security sensitive function can receive an input string that contains an exploit; (2) Identifying possible behaviors of a program by identifying possible values for dynamically generated code; (3) Identifying html generation errors by computing the html code generated by web applications; (4) Identifying the set of queries that are sent to back-end database by analyzing the code that generates the SQL queries; (5) Patching input validation and sanitization functions by automatically synthesizing repairs illustrated in this book.

Like many other program-analysis problems, it is not possible to solve the string analysis problem precisely (i.e., it is not possible to precisely determine the set of string values that can reach a program point). However, one can compute over- or under-approximations of possible string values. If the approximations are precise enough, they can enable developers to demonstrate existence or absence of bugs in string manipulating code. String analysis has been an active research area in the last decade, resulting in a wide variety of string-analysis techniques.

This book will primarily target researchers and professionals working in computer security, software verification, formal methods, software engineering and program analysis. Advanced level students or instructors teaching or studying courses in computer security, software verification or program analysis will find this book useful as a secondary text. 

1 Introduction: String Manipulating Programs and Difficulty of Their Analysis.- 2 String Manipulating Programs and Difficulty of Their Analysis.- 3 State Space Exploration.- 4 Automata Based String Analysis.- 5 Relational String Analysis.- 6 Abstraction and Approximation.- 7 Constraint-based String Analysis.- 8 Vulnerability Detection and Sanitization Synthesis.- 9 Differential String Analysis and Repair.- 10 Tools.- 11 A Brief Survey of Related Work.- 12 Conclusions.

Erscheint lt. Verlag 4.1.2018
Zusatzinfo IX, 174 p. 74 illus., 6 illus. in color.
Verlagsort Cham
Sprache englisch
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Mathematik / Informatik Informatik Software Entwicklung
Mathematik / Informatik Mathematik
Schlagworte Automata-based strong analysis • Automated abstraction • Automated code repair • Automated sanitization synthesis • Automated string analysis • Computer Security • formal methods • Input validation and sanitization • Java • Modern programming languages • Modern software systems • Program verification • Software Verification • string analysis • String constraints • Symbolic verification • vulnerability detection
ISBN-10 3-319-68670-4 / 3319686704
ISBN-13 978-3-319-68670-7 / 9783319686707
Haben Sie eine Frage zum Produkt?
PDFPDF (Wasserzeichen)
Größe: 8,5 MB

DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasser­zeichen und ist damit für Sie persona­lisiert. Bei einer missbräuch­lichen Weiter­gabe des eBooks an Dritte ist eine Rück­ver­folgung an die Quelle möglich.

Dateiformat: PDF (Portable Document Format)
Mit einem festen Seiten­layout eignet sich die PDF besonders für Fach­bücher mit Spalten, Tabellen und Abbild­ungen. Eine PDF kann auf fast allen Geräten ange­zeigt werden, ist aber für kleine Displays (Smart­phone, eReader) nur einge­schränkt geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.

Mehr entdecken
aus dem Bereich
Das umfassende Handbuch

von Johannes Ernesti; Peter Kaiser

eBook Download (2023)
Rheinwerk Computing (Verlag)
44,90
Das Handbuch für Webentwickler

von Philip Ackermann

eBook Download (2023)
Rheinwerk Computing (Verlag)
49,90
Mit über 150 Workouts in Java und Python

von Luigi Lo Iacono; Stephan Wiefling; Michael Schneider

eBook Download (2023)
Carl Hanser Verlag GmbH & Co. KG
29,99