Back to Search Start Over

A General Approach to Under-Approximate Reasoning About Concurrent Programs

Authors :
Azalea Raad and Julien Vanegue and Josh Berdine and Peter O'Hearn
Raad, Azalea
Vanegue, Julien
Berdine, Josh
O'Hearn, Peter
Azalea Raad and Julien Vanegue and Josh Berdine and Peter O'Hearn
Raad, Azalea
Vanegue, Julien
Berdine, Josh
O'Hearn, Peter
Publication Year :
2023

Abstract

There is a large body of work on concurrent reasoning including Rely-Guarantee (RG) and Concurrent Separation Logics. These theories are over-approximate: a proof identifies a superset of program behaviours and thus implies the absence of certain bugs. However, failure to find a proof does not imply their presence (leading to false positives in over-approximate tools). We describe a general theory of under-approximate reasoning for concurrency. Our theory incorporates ideas from Concurrent Incorrectness Separation Logic and RG based on a subset rather than a superset of interleavings. A strong motivation of our work is detecting software exploits; we do this by developing concurrent adversarial separation logic (CASL), and use CASL to detect information disclosure attacks that uncover sensitive data (e.g. passwords) and out-of-bounds attacks that corrupt data. We also illustrate our approach with classic concurrency idioms that go beyond prior under-approximate theories which we believe can inform the design of future concurrent bug detection tools.

Details

Database :
OAIster
Notes :
application/pdf, English
Publication Type :
Electronic Resource
Accession number :
edsoai.on1402194140
Document Type :
Electronic Resource
Full Text :
https://doi.org/10.4230.LIPIcs.CONCUR.2023.25