Static Detection of Silent Misconfigurations with Deep Interaction Analysis
summary
Builds a tool called ConfigX that statically links configuration entries to code via LLVM IR, applies customized data- and control-flow tainting to derive configuration rules, and runs SMT-based reachability checks with Z3 to prune false positives. The translator also parses varied grammars into an IR and flags syntax issues like unmatched guards or missing modules. Across Apache, vsftpd, and PostgreSQL on five datasets it detects 2200+ silent misconfigurations, prunes 34 spurious rules, and validates 16 of 19 forum reports.
AI-written summary · about
chapters (15)
- 0:00Intro
- 0:53A Real-world Silent Misconfiguration
- 1:44What Is a Silent Misconfiguration?
- 2:10Root Cause of Silent Misconfiguration
- 3:07Analyze Configurations and Source Code Jointly
- 3:57Our Survey: Frequency of Silent Misconfigurations
- 4:55Five Types of Silent Misconfigurations
- 5:12ConfigX - System Overview
- 6:36Translator - Detect Syntax-related Silent Misconfigurations
- 8:06Configuration Mapping
- 9:07Rule Deriving
- 11:12Reachability Analysis
- 11:53Evaluation
- 12:53Lesson from Detected Real-world Misconfigurations
- 14:25Conclusion
related talks
27mCatch Me If You Can: Hunting Misconfigurations Before They...
42mContemporary Automatic Program Analysis
25mFinding Unmet Dependencies in Kconfig with the Kismet Static Analyzer
17mTraining with Confidence: Catching Silent Errors in Deep Learning Training with...
36mStatic Analysis of APL for Tooling and Compliance
52mBringing Existing Open-Source Code into MISRA Compliance
59mUnder-approximation for Scalable Bug Detection
29mFinding real bugs in big programs with incorrectness logic
