Symbolic Abstract Heaps for Polymorphic Information-flow Guard Inference (Extended Version)

11/07/2022
by   Nicolas Berthier, et al.
0

In the realm of sound object-oriented program analyses for information-flow control, very few approaches adopt flow-sensitive abstractions of the heap that enable a precise modeling of implicit flows. To tackle this challenge, we advance a new symbolic abstraction approach for modeling the heap in Java-like programs. We use a store-less representation that is parameterized with a family of relations among references to offer various levels of precision based on user preferences. This enables us to automatically infer polymorphic information-flow guards for methods via a co-reachability analysis of a symbolic finite-state system. We instantiate the heap abstraction with three different families of relations. We prove the soundness of our approach and compare the precision and scalability obtained with each instantiated heap domain by using the IFSpec benchmarks and real-life applications.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
12/28/2017

Abstract Interpretation using a Language of Symbolic Approximation

The traditional abstract domain framework for imperative programs suffer...
research
01/28/2018

Generalized Points-to Graphs: A New Abstraction of Memory in the Presence of Pointers

Flow- and context-sensitive points-to analysis is difficult to scale; fo...
research
07/15/2019

A Relational Static Semantics for Call Graph Construction

The problem of resolving virtual method and interface calls in object-or...
research
07/27/2021

So You Want to Analyze Scheme Programs With Datalog?

Static analysis approximates the results of a program by examining only ...
research
12/14/2021

How to Learn and Represent Abstractions: An Investigation using Symbolic Alchemy

Alchemy is a new meta-learning environment rich enough to contain intere...
research
02/03/2018

Demand-driven Alias Analysis : Formalizing Bidirectional Analyses for Soundness and Precision

A demand-driven approach to program analysis have been viewed as efficie...
research
06/04/2019

Unification-based Pointer Analysis without Oversharing

Pointer analysis is indispensable for effectively verifying heap-manipul...

Please sign up or login with your details

Forgot password? Click here to reset