A First Step Towards Automated Detection of Buffer Overrun Vulnerabilities
By David A. Wagner, Jeffrey S. Foster, Eric A. Brewer, A. Aiken. Network and Distributed System Security Symposium, 2000
735 citations recorded by the source corpus.
View Paper: https://www.semanticscholar.org/paper/29ee133abb2e2cd15d12c775450c7f0dce9b2812
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
- P. Akritidis
- Manuel Costa
- Dawn Song
- Benjamin Livshits
- Cristian Cadar
- Santosh Nagarakatte
- Wei Xu
- Sandeep Bhatkar
Citations in the corpus
- WYSINWYX: What you see is not what you eXecute (2010, methodology): “…and computer security has led to new kinds of tools for analyzing programs for bugs and security vulnerabilities [Havelund and Pressburger 2000; Wagner et al. 2000; Engler et al. 2000; Corbett et al. 2000; Bush et al. 2000; Ball and Rajamani 2001; Chen and Wagner 2002; Henzinger et al.…”
- Preventing Privilege Escalation (2003, background): “Using static analysis, it is possible to automatically find buffer overrun vulnerabilities [13, 27], format string vulnerabilities [24], etc.”
- Mondrian memory protection (2002, background): “Buffer overruns in unsafe languages are a common source of security holes [32].”
- Securing web application code by static analysis and runtime protection (2004, methodology): “Most efforts to develop checkers have resulted in publicly available tools [16], including BOON by Wagner et al. [71], RATS by Secure Software [64], FlawFinder by Wheeler [75], PScan by DeKok [20], Splint by Larochelle and Evans [44], and ITS4 by Viega et al. [69].”
- Enhancing Server Availability and Security Through Failure-Oblivious Computing (2004, background): “Researchers have also developed unsound, incomplete analyses that heuristically identify potential errors [54, 19].”
- Buffer overflows: attacks and defenses for the vulnerability of the decade (2000, unknown): “There are also static analysis tools emerging [ 40 ] that can detect many buffer overflow vulnerabilities.”
- Finding application errors and security flaws using PQL: a program query language (2005, unknown): “Advanced program analysis has been applied fruitfully to fin d large numbers of errors in software [10, 18, 20, 46, 54].”
- CCured: type-safe retrofitting of legacy software (2005, background): “Memory safety is an absolute prerequisite for security, and it is the failure of memory safety that is most often to blame for insecurity in deployed software [Wagner et al. 2000].”
- Improving Security Using Extensible Lightweight Static Analysis (2002, unknown): “Instead”
- DynaMine: finding common error patterns by mining software revision histories (2005, background): “A great deal of attention has lately been given to addressing application-specific software bugs such as errors in operating system drivers [4, 13], security errors [20, 32], or errors in reliabilitycritical embedded software in domains like avionics [7, 8].”
- Securing software by enforcing data-flow integrity (2006, methodology): “Several systems use static analysis to detect software vulnerabilities in C and C++ programs (e.g., [ 38 , 11, 12]).”
- A Practical Dynamic Buffer Overflow Detector (2004, background): “Static buffer overflow detectors attempt to verify that all memory accesses are checked for overruns[11] [22] [31].”
- Static Analysis in Disjunctive Numerical Domains (2006, methodology): “Static analysis over numerical domains has been used to check programs for buffer overflows, null pointer references and other violations such as division by zero and floating point errors [25, 4, 12].”
- Efficient Techniques for Comprehensive Protection from Memory Error Exploits (2005, methodology): “Compile-Time Analysis Techniques These techniques [15, 27, 31, 11, 22] analyze a program’s source code to detect potential array and pointer access errors.”
- Intrusion detection via static analysis (2001, background): “Application logic bugs, however, are dwarfed in practice by buffer overflow problems and other vulnerabilities that allow for execution of arbitrary machine code of the attacker’s choice [8, 35], and it is the latter type of vulnerability on which we focus.”
- CCured: type-safe retrofitting of legacy code (2002, methodology): “Using CCured we have discovered programming bugs in established C programs such as several SPECINT95 benchmarks.”