Skip to main navigation Skip to search Skip to main content

Abacus: Precise side-channel analysis

  • Qinkun Bao
  • , Zihao Wang
  • , Xiaoting Li
  • , James R. Larus
  • , Dinghao Wu

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Side-channel attacks allow adversaries to infer sensitive information from non-functional characteristics. Prior side-channel detection work is able to identify numerous potential vulnerabilities. However, in practice, many such vulnerabilities leak a negligible amount of sensitive information, and thus developers are often reluctant to address them. Existing tools do not provide information to evaluate a leak's severity, such as the number of leaked bits. To address this issue, we propose a new program analysis method to precisely quantify the leaked information in a single-trace attack through side-channels. It can identify covert information flows in programs that expose confidential information and can reason about security flaws that would otherwise be difficult, if not impossible, for a developer to find. We model an attacker's observation of each leakage site as a constraint. We use symbolic execution to generate these constraints and then run Monte Carlo sampling to estimate the number of leaked bits for each leakage site. By applying the Central Limit Theorem, we provide an error bound for these estimations. We have implemented the technique in a tool called Abacus, which not only finds very fine-grained side-channel vulnerabilities but also estimates how many bits are leaked. Abacus outperforms existing dynamic side-channel detection tools in performance and accuracy. We evaluate Abacus on OpenSSL, mbedTLS, Libgcrypt, and Monocypher. Our results demonstrate that most reported vulnerabilities are difficult to exploit in practice and should be de-prioritized by developers. We also find several sensitive vulnerabilities that are missed by the existing tools. We confirm those vulnerabilities with manual checks and by contacting the developers.

Original languageEnglish (US)
Title of host publicationProceedings - 2021 IEEE/ACM 43rd International Conference on Software Engineering, ICSE 2021
PublisherIEEE Computer Society
Pages797-809
Number of pages13
ISBN (Electronic)9780738113197
DOIs
StatePublished - Nov 2021
Event43rd IEEE/ACM International Conference on Software Engineering, ICSE 2021 - Virtual, Online, Spain
Duration: May 22 2021May 30 2021

Publication series

NameProceedings - International Conference on Software Engineering
ISSN (Print)0270-5257

Conference

Conference43rd IEEE/ACM International Conference on Software Engineering, ICSE 2021
Country/TerritorySpain
CityVirtual, Online
Period5/22/215/30/21

All Science Journal Classification (ASJC) codes

  • Software

Fingerprint

Dive into the research topics of 'Abacus: Precise side-channel analysis'. Together they form a unique fingerprint.

Cite this