ISSTA 2024
Mon 16 - Fri 20 September 2024 Vienna, Austria
co-located with ISSTA/ECOOP 2024
Fri 20 Sep 2024 11:30 - 11:50 at EI 9 Hlawka - Call Graphs and Static Analysis Chair(s): Julia Rubin

A storage is a persistent memory whose contents are kept across different program executions. In the \emph{blockchain} technology, storage contents are replicated and incur the largest costs of a program's execution (a.k.a. \emph{gas fees}).

Storage costs are \emph{dynamically} calculated using a rather complex model which assigns a much larger cost to the first access made in an execution to a storage key, and besides assigns different costs to \emph{write} accesses depending on whether they change the values w.r.t. the initial and previous contents. Safely assuming the largest cost for all situations, as done in existing gas analyzers, is an overly-pessimistic approach that might render useless bounds because of being too loose. The challenge is to soundly, and yet accurately, synthesize storage bounds which take into account the dynamicity implicit to the cost model. Our solution consists in using an off-the-shelf static resource analysis —but do not always assuming a worst-case cost— and hence yielding \emph{unsound} bounds; and then, in a posterior stage, computing corrections to recover soundness in the bounds by using a new Max-SMT based approach. We have implemented our approach and used it to improve the precision of two gas analyzers for Ethereum, gastap and asparagus. Experimental results on more than 400,000 functions show that we achieve great accuracy gains, up to 75%, on the storage bounds, being the most frequent gains between 10-20%.

Fri 20 Sep

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

10:30 - 11:50
Call Graphs and Static AnalysisTechnical Papers at EI 9 Hlawka
Chair(s): Julia Rubin The University of British Columbia
10:30
20m
Talk
Unimocg: Modular Call-Graph Algorithms for Consistent Handling of Language Features
Technical Papers
Dominik Helm University of Duisburg-Essen; TU Darmstadt; National Research Center for Applied Cybersecurity ATHENE, Tobias Roth TU Darmstadt; National Research Center for Applied Cybersecurity ATHENE, Sven Keidel TU Darmstadt, Michael Reif CQSE, Mira Mezini TU Darmstadt; hessian.AI; National Research Center for Applied Cybersecurity ATHENE
DOI Pre-print
10:50
20m
Talk
Total Recall? How Good Are Static Call Graphs Really?
Technical Papers
Dominik Helm University of Duisburg-Essen; TU Darmstadt; National Research Center for Applied Cybersecurity ATHENE, Sven Keidel TU Darmstadt, Anemone Kampkötter TU Dortmund, Johannes Düsing TU Dortmund, Tobias Roth TU Darmstadt; National Research Center for Applied Cybersecurity ATHENE, Ben Hermann TU Dortmund, Mira Mezini TU Darmstadt; hessian.AI; National Research Center for Applied Cybersecurity ATHENE
DOI Pre-print
11:10
20m
Talk
Call Graph Soundness in Android Static Analysis
Technical Papers
Jordan Samhi CISPA Helmholtz Center for Information Security, René Just University of Washington, Tegawendé F. Bissyandé University of Luxembourg, Michael D. Ernst University of Washington, Jacques Klein University of Luxembourg
Link to publication DOI Pre-print
11:30
20m
Talk
Synthesis of Sound and Precise Storage Cost Bounds via Unsound Resource Analysis and Max-SMT
Technical Papers
Elvira Albert Complutense University of Madrid, Jesús Correas Complutense University of Madrid, Pablo Gordillo Complutense University of Madrid, Guillermo Román-Díez Universidad Politécnica de Madrid, Albert Rubio Complutense University of Madrid
DOI

Information for Participants