Mythril

Blockchain / Web3 v0.24.8 · 27.03.2024 не обновлялся >2 лет

Инструмент безопасности Ethereum-контрактов от ConsenSys. Использует symbolic execution, concolic analysis и SMT-solving для обнаружения reentrancy, integer overflow, arbitrary jump, delegatecall injection. Работает с EVM-байткодом без исходников.

v0.24.8
27.03.2024 current
Добавлен 13.07.2026 · Обновлён 15.07.2026 · Blockchain / Web3
Установка
pip install mythril
# Анализ по адресу контракта в mainnet
myth analyze --address 0xABCD... --infura-id YOUR_ID
# Анализ файла
myth analyze contract.sol
переведено ИИ

Mythril

Discord PyPI Read the Docs CircleCI Sonarcloud - Maintainability Pypi Installs DockerHub Pulls

Mythril — это инструмент анализа безопасности на основе символического исполнения для байт-кода EVM. Он обнаруживает уязвимости в смарт-контрактах, построенных для Ethereum и других совместимых с EVM блокчейнов.

Независимо от того, хотите ли вы внести свой вклад, нуждаетесь в поддержке или хотите узнать, что мы готовим на будущее, вы можете заглянуть в канал diligence-mythx на Discord-сервере ConsenSys.

Установка и настройка

Получите его с помощью Docker:

$ docker pull mythril/myth

Установите из Pypi (Python 3.7-3.10):

$ pip3 install mythril

Используйте его через хук pre-commit (замените $GIT_TAG на реальный тег):

- repo: https://github.com/Consensys/mythril
  rev: $GIT_TAG
  hooks:
    - id: mythril

Дополнительно установите args: [disassemble] или args: [read-storage], чтобы использовать команду, отличную от analyze.

Более подробные инструкции смотрите в документации.

Использование

Запустите:

$ myth analyze <solidity-file>

Или:

$ myth analyze -a <contract-address>

Укажите максимальное количество транзакций для исследования с помощью -t <число>. Вы также можете установить тайм-аут с помощью --execution-timeout <секунды>.

Вот пример запуска Mythril над файлом killbilly.sol, который находится в директории solidity_examples, для 3 транзакций:

<<>

Инструкции по использованию Mythril находятся в документации.

Для получения поддержки или проведения общих обсуждений, пожалуйста, загляните в канал diligence-mythx на Discord-сервере ConsenSys.

Сборка документации

Документация Mythril находится в папке docs и публикуется на Read the Docs. Она основана на Sphinx и может быть собрана с помощью Makefile, находящегося в подкаталоге:

<<>

Это создаст выходную директорию build, содержащую HTML-вывод. Альтернативно, PDF-документация может быть собрана с помощью make latexpdf. Доступные форматы вывода можно посмотреть, выполнив make help.

Исправление уязвимостей

Посетите Реестр классификации уязвимостей смарт-контрактов, чтобы найти подробную информацию и рекомендации по исправлению обнаруженных уязвимостей.

Комментарии
Войдите, чтобы оставить комментарий