2019 IEEE/ACM 2nd International Workshop on Emerging Trends in Software Engineering for Blockchain (WETSEB) 2019
DOI: 10.1109/wetseb.2019.00008
|View full text |Cite
|
Sign up to set email alerts
|

Slither: A Static Analysis Framework for Smart Contracts

Abstract: This paper describes Slither, a static analysis framework designed to provide rich information about Ethereum smart contracts. It works by converting Solidity smart contracts into an intermediate representation called SlithIR. SlithIR uses Static Single Assignment (SSA) form and a reduced instruction set to ease implementation of analyses while preserving semantic information that would be lost in transforming Solidity to bytecode. Slither allows for the application of commonly used program analysis techniques… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
196
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
4
2
1
1

Relationship

0
8

Authors

Journals

citations
Cited by 461 publications
(260 citation statements)
references
References 7 publications
0
196
0
Order By: Relevance
“…Tool URLs contractLarva [2] https://github.com/gordonpace/contractLarva E-EVM [33] https://github.com/pisocrob/E-EVM Echidna https://github.com/crytic/echidna Erays [44] https://github.com/teamnsrg/erays Ether [26] N/A Ethersplay https://github.com/crytic/ethersplay EtherTrust [19] https://www.netidee.at/ethertrust EthIR [1] https://github.com/costa-group/EthIR FSolidM [28] https://github.com/anmavrid/smart-contracts Gasper [9] N/A HoneyBadger [41] https://github.com/christoftorres/ HoneyBadger KEVM [21] https://github.com/kframework/evmsemantics MadMax [17] https://github.com/nevillegrech/MadMax Maian [32] https://github.com/MAIAN-tool/MAIAN Manticore [30] https://github.com/trailofbits/manticore/ Mythril [31] https://github.com/ConsenSys/mythril-classic Octopus https://github.com/quoscient/octopus Osiris [40] https://github.com/christoftorres/Osiris Oyente [27] https://github.com/melonproject/oyente Porosity [38] https://github.com/comaeio/porosity rattle https://github.com/crytic/rattle ReGuard [25] N/A Remix https://github.com/ethereum/remix SASC [43] N/A sCompile [6] N/A Securify [42] https://github.com/eth-sri/securify Slither [16] https://github.com/crytic/slither Smartcheck [39] https://github.com/smartdec/smartcheck Solgraph https://github.com/raineorshine/solgraph Solhint https://github.com/protofire/solhint SolMet [20] https://github.com/chicxurug/SolMet-Solidity-parser teEther [23] https://github.com/nescio007/teether Vandal [4] https://github.com/usyd-blockchain/vandal VeriSol [24] https://github.com/microsoft/verisol Zeus [22] N/A , developed by TrailOfBits, also uses symbolic execution to find execution paths in EVM bytecode that lead to reentrancy vulnerabilities and reachable self-destruct operations.…”
Section: # Toolsmentioning
confidence: 99%
See 2 more Smart Citations
“…Tool URLs contractLarva [2] https://github.com/gordonpace/contractLarva E-EVM [33] https://github.com/pisocrob/E-EVM Echidna https://github.com/crytic/echidna Erays [44] https://github.com/teamnsrg/erays Ether [26] N/A Ethersplay https://github.com/crytic/ethersplay EtherTrust [19] https://www.netidee.at/ethertrust EthIR [1] https://github.com/costa-group/EthIR FSolidM [28] https://github.com/anmavrid/smart-contracts Gasper [9] N/A HoneyBadger [41] https://github.com/christoftorres/ HoneyBadger KEVM [21] https://github.com/kframework/evmsemantics MadMax [17] https://github.com/nevillegrech/MadMax Maian [32] https://github.com/MAIAN-tool/MAIAN Manticore [30] https://github.com/trailofbits/manticore/ Mythril [31] https://github.com/ConsenSys/mythril-classic Octopus https://github.com/quoscient/octopus Osiris [40] https://github.com/christoftorres/Osiris Oyente [27] https://github.com/melonproject/oyente Porosity [38] https://github.com/comaeio/porosity rattle https://github.com/crytic/rattle ReGuard [25] N/A Remix https://github.com/ethereum/remix SASC [43] N/A sCompile [6] N/A Securify [42] https://github.com/eth-sri/securify Slither [16] https://github.com/crytic/slither Smartcheck [39] https://github.com/smartdec/smartcheck Solgraph https://github.com/raineorshine/solgraph Solhint https://github.com/protofire/solhint SolMet [20] https://github.com/chicxurug/SolMet-Solidity-parser teEther [23] https://github.com/nescio007/teether Vandal [4] https://github.com/usyd-blockchain/vandal VeriSol [24] https://github.com/microsoft/verisol Zeus [22] N/A , developed by TrailOfBits, also uses symbolic execution to find execution paths in EVM bytecode that lead to reentrancy vulnerabilities and reachable self-destruct operations.…”
Section: # Toolsmentioning
confidence: 99%
“…Slither [16], developed by TrailOfBits, is a static analysis framework that converts Solidity smart contracts into an intermediate representation called SlithIR and applies known program analysis techniques such as dataflow and taint tracking to extract and refine information.…”
Section: # Toolsmentioning
confidence: 99%
See 1 more Smart Citation
“…Slither is a static analysis framework written in Python 3 with dependencies on the Solidity Compiler (Solc) [ 55 ]. Slither uses a bundle of vulnerability detectors, printing the analysis results.…”
Section: Toolsmentioning
confidence: 99%
“…Related Works. There is a surge of interest in analyzing and verifying smart contracts [32,12,24,28,26,9,25,31,21,44,20,22,38,36,4,34,43,19,30,35,29,23,46,14]. Some of the existing works focus on EVM [2,47] (Ethereum Virtual Machine).…”
Section: Introductionmentioning
confidence: 99%