kth.sePublications KTH
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
SmartBugs: A Framework to Analyze Solidity Smart Contracts
Univ Lisbon, INESC ID & IST, Lisbon, Portugal..
Univ Lisbon, INESC ID & IST, Lisbon, Portugal..
KTH, School of Electrical Engineering and Computer Science (EECS), Computer Science, Software and Computer systems, SCS.ORCID iD: 0000-0002-1996-6134
Univ Lisbon, INESC ID & IST, Lisbon, Portugal..ORCID iD: 0000-0003-3734-3157
2020 (English)In: 35th IEEE/ACM International Conference on Automated Software Engineering, ASE 2020, 22 September 2020 - 25 September 2020, Association for Computing Machinery (ACM) , 2020, p. 1349-1352Conference paper, Published paper (Refereed)
Abstract [en]

Over the last few years, there has been substantial research on automated analysis, testing, and debugging of Ethereum smart contracts. However, it is not trivial to compare and reproduce that research. To address this, we present SmartBugs, an extensible and easy-to-use execution framework that simplifies the execution of analysis tools on smart contracts written in Solidity, the primary language used in Ethereum. SmartBugs is currently distributed with support for 10 tools and two datasets of Solidity contracts. The first dataset can be used to evaluate the precision of analysis tools, as it contains 143 annotated vulnerable contracts with 208 tagged vulnerabilities. The second dataset contains 47,518 unique contracts collected through Etherscan. We discuss how SmartBugs supported the largest experimental setup to date both in the number of tools and in execution time. Moreover, we show how it enables easy integration and comparison of analysis tools by presenting a new extension to the tool SmartCheck that improves substantially the detection of vulnerabilities related to the DASP10 categories Bad Randomness, Time Manipulation, and Access Control (identified vulnerabilities increased from 11% to 24%).

Place, publisher, year, edition, pages
Association for Computing Machinery (ACM) , 2020. p. 1349-1352
Series
IEEE ACM International Conference on Automated Software Engineering, ISSN 1527-1366
Keywords [en]
Smart contracts, Solidity, Ethereum, Blockchain, Tools, Debugging, Testing, Reproducible Bugs
National Category
Computer Sciences
Identifiers
URN: urn:nbn:se:kth:diva-296846DOI: 10.1145/3324884.3415298ISI: 000651313500142Scopus ID: 2-s2.0-85099245555OAI: oai:DiVA.org:kth-296846DiVA, id: diva2:1565475
Conference
35th IEEE/ACM International Conference on Automated Software Engineering (ASE), SEP 21-25, 2020, ELECTR NETWORK
Note

QC 20210614

Available from: 2021-06-14 Created: 2021-06-14 Last updated: 2022-06-25Bibliographically approved

Open Access in DiVA

No full text in DiVA

Other links

Publisher's full textScopus

Authority records

Durieux, Thomas

Search in DiVA

By author/editor
Durieux, ThomasAbreu, Rui
By organisation
Software and Computer systems, SCS
Computer Sciences

Search outside of DiVA

GoogleGoogle Scholar

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 112 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf