Security analysis tool for EVM bytecode. Supports smart contracts built for Ethereum, Hedera, Quorum, Vechain, Roostock, Tron and other EVM-compatible blockchains.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Dominik Muhs d7f80023d7 Merge branch 'develop' into feature/docs 6 years ago
.circleci Reduce timeout duration 6 years ago
.github/ISSUE_TEMPLATE swc_id -> swc-id 6 years ago
docs Apply black 6 years ago
mythril Merge branch 'develop' into feature/docs 6 years ago
solidity_examples Optimize imports 6 years ago
static Rename logo file 6 years ago
tests Merge branch 'develop' into feature/docs 6 years ago
.editorconfig An extra newline was being added by the editor 7 years ago
.gitattributes Add highlight for solidity files (#732) 6 years ago
.gitignore Remove rst from gitignore 6 years ago
CONTRIBUTING.md Change gitter links and references to discord (#708) 6 years ago
Dockerfile SQLite Signature DB (#758) 6 years ago
LICENSE Update LICENSE 7 years ago
MANIFEST.in Correct the Manifest.ini path and moveback the signatures.db to mythril root 6 years ago
Pipfile Fixes issues with python 3.5 dict ordering 7 years ago
README.md Merge branch 'develop' into feature/docs 6 years ago
all_tests.sh Python 3.5 tolerance and note what Python versions Mythril accepts 6 years ago
coverage_report.sh Use xml coverage report 6 years ago
docker_build_and_deploy.sh Another fix of the docker build & release script 6 years ago
myth Python 3.5 tolerance and note what Python versions Mythril accepts 6 years ago
requirements.txt Fix py_ecc version 6 years ago
setup.py Apply better doc string formatting 6 years ago
signatures.db Correct the Manifest.ini path and moveback the signatures.db to mythril root 6 years ago
tox.ini SQLite Signature DB (#758) 6 years ago

README.md

Mythril Classic

Discord PyPI Master Build Status Waffle.io - Columns and their card count Sonarcloud - Maintainability Downloads

Mythril Classic is an open-source security analysis tool for Ethereum smart contracts. It uses concolic analysis, taint analysis and control flow checking to detect a variety of security vulnerabilities.

Whether you want to contribute, need support, or want to learn what we have cooking for the future, our Discord server will serve your needs.

Oh and by the way, we're also building an easy-to-use security analysis platform (a.k.a. "the INFURA for smart contract security") that anybody can use to create purpose-built security tools. It's called MythX and you should definitely check it out.

Installation and setup

Get it with Docker:

$ docker pull mythril/myth

Install from Pypi:

$ pip3 install mythril

See the Wiki for more detailed instructions.

Usage

Instructions for using Mythril Classic are found on the Wiki.

For support or general discussions please join the Mythril community on Discord.

Bulding the Documentation

Mythril Classic's documentation is contained in the docs folder. It is based on Sphinx and can be built using the Makefile contained in the subdirectory:

cd docs
make html

This will create a build output directory containing the HTML output. Alternatively, PDF documentation can be built with make latexpdf. The available output format options can be seen with make help.

Vulnerability Remediation

Visit the Smart Contract Vulnerability Classification Registry to find detailed information and remediation guidance for the vulnerabilities reported.