Sound Abstract Nonexploitability Analysis
summary
Defines a precise nonexploitability hyperproperty and gives a sound abstract-interpretation analysis that treats user input and randomness separately, proving nonexploitable iff the failure indicator is not tainted. Implements a 10k‑line OCaml analyzer for a C subset and runs it on 77 GNU Coreutils programs (up to 4,188 LOC) plus Juliet tests, filtering out 3498 of 4715 alarms as nonexploitable while adding under 16% runtime overhead.
AI-written summary · about
chapters (9)
- 0:00Introduction
- 1:48False positives in abstract interpretation
- 3:11Runtime errors and security
- 5:45Nonexploitability as hyperproperty
- 8:16Taint analysis for nonexploitability
- 10:23Combining domains with taint tracking
- 12:29Experimental evaluation
- 14:40Conclusion and future work
- 15:00Q&A
related talks
25mExploits as Insecure Compilation
31mSound Symbolic Execution via Abstract Interpretation and its Application to Sec...
51mThe Anatomy of an Exploit
38mEffective Usage Analysis: Boosting Developer Productivity Via Innovative, Noise-reduced Vulnerability Analysis
12mFully Abstract and Robust Compilation and How to Reconcile the Two, Abstractly
22mWhen is a vulnerability not a vulnerability? Overcoming the...
19mExploiting Undefined Behavior in C/C++ Programs for Optimization: A Study on the(…)
24mFuzzing Guided by Bayesian Program Analysis
