Loading...
Please wait, while we are loading the content...
Similar Documents
RUNTIME MONITORING OF C PROGRAMS FOR SECURITY AND CORRECTNESS (2004)
| Content Provider | CiteSeerX |
|---|---|
| Author | Yong, Suan Hsi |
| Abstract | Finding errors in software is a difficult problem: millions of dollars are spent in testing and debugging, yet latent bugs continue to be discovered even in thoroughly tested programs. Apart from the undesirable effects of producing incorrect results, crashing systems, and corrupting data, bugs also raise security concerns: memory-safety errors like buffer overruns and stale pointer dereferences can be exploited by malicious agents to acquire confidential data or seriously compromise the target system, sometimes in undetectable ways. A key feature of the C programming language is that it allows low-level control over memory usage and runtime behavior; this flexibility is crucial for many programming set-tings, such as at the system level, and is one reason why C programs continue to be widely used today. However, this flexibility is achieved at the price of safety: the language syntax is too weak to prevent type errors and memory-safety errors from occurring at runtime. This work explores three related approaches to detect errors in C programs via runtime monitoring. The Memory-Safety Enforcer is a tool that detects memory-safety errors at runtime, and can be used for both security and debugging. The Sensitive Location Checker |
| File Format | |
| Publisher Date | 2004-01-01 |
| Access Restriction | Open |
| Subject Keyword | Runtime Monitoring Program Security Correctness Memory-safety Error Undetectable Way Latent Bug Undesirable Effect Incorrect Result Sensitive Location Checker Memory-safety Enforcer Key Feature Malicious Agent Low-level Control System Level Target System Difficult Problem Confidential Data Stale Pointer Dereferences Security Concern Runtime Behavior Related Approach Buffer Overrun Memory Usage Type Error Runtime Monitoring Programming Language Language Syntax |
| Content Type | Text |