Verifying string manipulating programs is a crucial problem in computer security. String operations are used extensively within web applications to manipulate user input, and their erroneous use is the most common cause of security vulnerabilities in web applications. We present an automata-based approach for symbolic analysis of string manipulating programs. We use deterministic finite automata (DFAs) to represent possible values of string variables. Using forward reachability analysis we compute an over-approximation of all possible values that string variables can take at each program point. Intersecting these with a given attack pattern yields the potential attack strings if the program is vulnerable. Based on the presented techniques, ...
Probabilistic Symbolic Execution (PSE) extends Symbolic Execution (SE), a path-sensitive static prog...
Bugs in user input sanitation of software systems often lead to vulnerabilities. Among them many are...
Forward symbolic execution is a technique for program analysis that explores the execution paths of ...
Abstract. We present an automata-based approach for the verification of string operations in PHP pro...
Most common vulnerabilities in modern software applications are due to errors in string manipulatio...
Abstract. STRANGER is an automata-based string analysis tool for finding and eliminating string-rela...
Symbolic finite automata (SFA) allow the representation of regular languages of strings over an infi...
Language plays an important aspect in the life of all beings. Language can be defined as verbal, phy...
Abstract. Most common vulnerabilities in Web applications are due to string manipulation errors in i...
In this thesis, we study algorithms which can be used to extract, or learn, formal mathematical mode...
Motivated by the vulnerability analysis of web programs which work on string inputs, we present S3, ...
Abstract. There has been significant interest in static analysis of pro-grams that manipulate string...
Software testing is an integral part of the software development process. To test certain parts of s...
Automata, the simplest model of computation, have proven to be an effective tool in reasoning about ...
A crucial problem in developing dependable web applications is thecorrectness of the input validatio...
Probabilistic Symbolic Execution (PSE) extends Symbolic Execution (SE), a path-sensitive static prog...
Bugs in user input sanitation of software systems often lead to vulnerabilities. Among them many are...
Forward symbolic execution is a technique for program analysis that explores the execution paths of ...
Abstract. We present an automata-based approach for the verification of string operations in PHP pro...
Most common vulnerabilities in modern software applications are due to errors in string manipulatio...
Abstract. STRANGER is an automata-based string analysis tool for finding and eliminating string-rela...
Symbolic finite automata (SFA) allow the representation of regular languages of strings over an infi...
Language plays an important aspect in the life of all beings. Language can be defined as verbal, phy...
Abstract. Most common vulnerabilities in Web applications are due to string manipulation errors in i...
In this thesis, we study algorithms which can be used to extract, or learn, formal mathematical mode...
Motivated by the vulnerability analysis of web programs which work on string inputs, we present S3, ...
Abstract. There has been significant interest in static analysis of pro-grams that manipulate string...
Software testing is an integral part of the software development process. To test certain parts of s...
Automata, the simplest model of computation, have proven to be an effective tool in reasoning about ...
A crucial problem in developing dependable web applications is thecorrectness of the input validatio...
Probabilistic Symbolic Execution (PSE) extends Symbolic Execution (SE), a path-sensitive static prog...
Bugs in user input sanitation of software systems often lead to vulnerabilities. Among them many are...
Forward symbolic execution is a technique for program analysis that explores the execution paths of ...