Systematic Study of Compilers and Vulnerability Scanners Using the Example of Integer Bugs

Blockchain programs, also known as smart contracts, are particularly prone to attacks when they are freely accessible on public block chains and manage valuable assets. Therefore, compilers and vulnerability scanners aim at the auto-mated prevention and detection of weaknesses in such programs. To assess the effectiveness of these countermeasures, benchmark sets of real-world samples are the norm. While this approach is useful, it has shortcomings like selection bias, small size, and the controversial assessment of properties. In this paper, we advocate the use of benchmark sets that are systematically generated from templates by varying parameters along several dimensions. This way, we obtain large benchmark sets covering the weakness space in a fine-grained manner. By running tools like compilers and vulnerability scanners on such sets, we obtain profiles that allow us to assess individual properties of a tool as well as differences between tools. To showcase our approach, we take integer bugs in Solidity and the Ethereum virtual machine as an exemplary vulnerability. We collect variants of the bug from academic literature and generate two benchmark sets with 1411 and 174768 sample programs, respectively. We use the first set to compare the profiles of ten versions of the Solidity compiler and the second one to analyze the behavior of two vulnerability scanners, Mythril and Osiris. Our analysis reveals various discrepancies and peculiarities of the tools. Moreover, our systematic tests help explain why tools that address the same vulnerability tend to disagree.

Authors

Institutions

Publication Details

Published
2024-08-19
DOI
https://doi.org/10.1109/blockchain62396.2024.00039
Primary Topic
Advanced Malware Detection Techniques
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Systematic Study of Compilers and Vulnerability Scanners Using the Example of Integer Bugs

Gernot Salzer, Monika di Angelo, Rafael Mohr
Advanced Malware Detection Techniques
article

Systematic Study of Compilers and Vulnerability Scanners Using the Example of Integer Bugs

Gernot Salzer, Monika di Angelo, Rafael Mohr
article en

Abstract

Blockchain programs, also known as smart contracts, are particularly prone to attacks when they are freely accessible on public block chains and manage valuable assets. Therefore, compilers and vulnerability scanners aim at the auto-mated prevention and detection of weaknesses in such programs. To assess the effectiveness of these countermeasures, benchmark sets of real-world samples are the norm. While this approach is useful, it has shortcomings like selection bias, small size, and the controversial assessment of properties. In this paper, we advocate the use of benchmark sets that are systematically generated from templates by varying parameters along several dimensions. This way, we obtain large benchmark sets covering the weakness space in a fine-grained manner. By running tools like compilers and vulnerability scanners on such sets, we obtain profiles that allow us to assess individual properties of a tool as well as differences between tools. To showcase our approach, we take integer bugs in Solidity and the Ethereum virtual machine as an exemplary vulnerability. We collect variants of the bug from academic literature and generate two benchmark sets with 1411 and 174768 sample programs, respectively. We use the first set to compare the profiles of ten versions of the Solidity compiler and the second one to analyze the behavior of two vulnerability scanners, Mythril and Osiris. Our analysis reveals various discrepancies and peculiarities of the tools. Moreover, our systematic tests help explain why tools that address the same vulnerability tend to disagree.

Vol. 53
TU Wien (AT)
Openalex Percentile: Top 83%
Advanced Malware Detection Techniques
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Systematic Study of Compilers and Vulnerability Scanners Using the Example of Integer Bugs — Gernot Salzer, Monika di Angelo, et al. · (2024) | TGRS Research Map | TGRS