Litcius/Paper detail

ct-fuzz: Fuzzing for Timing Leaks

Shaobo He, Michael Emmi, Gabriela Ciocarlie

202028 citationsDOI

Abstract

Testing-based methodologies like fuzzing are able to analyze complex software which is not amenable to traditional formal approaches like verification, model checking, and abstract interpretation. Despite enormous success a texposing countless security vulnerabilities in many popular software projects, applications of testing-based approaches mainly targeted checking traditional safety properties like memory safety. While unquestionably important, this class of properties does not precisely characterize other important security aspects such as information leakage, e.g., through side channels. In this work we extend testing-based software analysis methodologies to two-safety properties, which enables the precise discovery of information leaks in complex software. In particular, we present the ct-fuzz tool, which lends coverage-guided grey box fuzzers the ability to detect two safety property violations. Our approach is capable of exposing violations to any two-safety property expressed a sequality between two program traces. Empirically, we demonstrate that ct-fuzz swiftly reveals timing leaks in popular cryptographic implementations.

Topics & Concepts

Fuzz testingComputer scienceProperty (philosophy)Abstract interpretationSoftwareMemory leakSoftware bugMemory safetyInformation leakageStatic analysisTaint checkingComputer securityProgramming languageMemory managementOverlayPhilosophyEpistemologySecurity and Verification in ComputingAdvanced Malware Detection TechniquesAdversarial Robustness in Machine Learning
ct-fuzz: Fuzzing for Timing Leaks | Litcius