Каталог инструментов

14 инструментов

Тег: blockchain ×

Aderyn

v0.3.4
Blockchain / Web3

Статический анализатор Solidity на Rust от Cyfrin. Обходит AST контрактов, обнаруживает уязвимости (reentrancy, unchecked returns, centralization risks) и формирует Markdown-отчёты. Более быстрый и точный детектор паттернов, чем Python-аналоги.

# Через cargo cargo install aderyn # Или через npm (wrapper) npm install -g @cyfrin/aderyn # Анализ Foundry/Hardhat проекта cd my-contract-project aderyn . # Вывод в Markdown-файл aderyn . --output report.md # Проверить конкретный контракт aderyn src/MyContract.sol

DeFiHackLabs

Blockchain / Web3

Коллекция PoC-эксплойтов для реальных DeFi-взломов через Foundry forge-тесты. Включает: reentrancy (Euler Finance $197M), flash loan attacks (CREAM Finance), price oracle manipulation, integer overflow, access control bypass. Каждая атака …

git clone https://github.com/SunWeb3Sec/DeFiHackLabs cd DeFiHackLabs && forge install # Воспроизведение Euler Finance hack: forge test --match-contract EulerFinanceTest -vv

Echidna

v2.3.2
Blockchain / Web3

Фаззер смарт-контрактов на основе property-based testing от Trail of Bits. Генерирует случайные транзакции для нарушения инвариантов (property functions). Использует corpus-based и coverage-guided fuzzing. Находит баги недостижимые статическим анализом: …

# Docker (рекомендуется) docker run -it -v $PWD:/src trailofbits/echidna echidna-test contract.sol --contract Test --config config.yaml

Foundry

v1.7.1
Blockchain / Web3

Современный Ethereum-фреймворк для разработки и security research от Paradigm. Для аудиторов: cast (вызов контрактов, декодирование calldata, работа с mainnet-форком), forge (юнит-тесты с cheat codes — манипуляция state/timestamp/block для …

curl -L https://foundry.paradigm.xyz | bash && foundryup # Форк mainnet anvil --fork-url https://eth-mainnet.g.alchemy.com/v2/KEY # Вызов контракта cast call 0xABC "balanceOf(address)(uint256)" $ADDR

Heimdall-rs

v0.9.3
Blockchain / Web3

Набор инструментов для EVM-реверса: декомпиляция байткода в Solidity/Yul, дизассемблирование, декодирование calldata и трассировка вызовов без исходного кода. Позволяет исследовать неверифицированные контракты напрямую с цепи.

# Через cargo cargo install heimdall-rs # Или бинарник из релизов: # https://github.com/Jon-Becker/heimdall-rs/releases # Декомпиляция контракта по адресу (Ethereum mainnet) heimdall decompile 0xAbCd... --rpc-url https://eth-mainnet.g.alchemy.com/v2/KEY # Декодирование calldata heimdall decode 0xa9059cbb000000... # Дизассемблирование heimdall disassemble 0xAbCd... --rpc-url https://eth-mainnet.g.alchemy.com/v2/KEY

Manticore

v0.3.7
Blockchain / Web3

Фреймворк символьного выполнения для EVM и нативных бинарей (x86/64, ARM) от Trail of Bits. Для Ethereum: исследует все пути выполнения, генерирует PoC-транзакции для найденных уязвимостей. Для нативных бинарей: …

pip install manticore[native] # EVM manticore contract.sol # Нативный бинарь manticore ./vulnerable_binary

Mythril

v0.24.8
Blockchain / Web3

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

pip install mythril # Анализ по адресу контракта в mainnet myth analyze --address 0xABCD... --infura-id YOUR_ID # Анализ файла myth analyze contract.sol
Blockchain / Web3

Исчерпывающий список всех исторических reentrancy-атак на Ethereum с 2016 года (The DAO и далее): адреса контрактов, txhash, суммы потерь, описания векторов. Репозиторий pcaversaccio — референс для аудиторов и …

# Только справочник — клонировать и изучать git clone https://github.com/pcaversaccio/reentrancy-attacks cd reentrancy-attacks # README содержит таблицу с: # - датой атаки # - атакованным протоколом # - потерями в USD # - хешем транзакции # - описанием вектора

Slither

v0.11.5
Blockchain / Web3

Статический анализатор смарт-контрактов Solidity от Trail of Bits. 80+ детекторов: reentrancy, integer overflow, tx.origin authentication, unprotected SELFDESTRUCT, shadowing переменных. Строит граф вызовов, inheritance, выполняет taint-анализ. Интегрируется в CI/CD …

pip install slither-analyzer # Анализ проекта Hardhat/Foundry slither . # Конкретный контракт slither contract.sol # JSON-вывод для CI slither . --json results.json

SmartBugs

v2.1.1
Blockchain / Web3

Фреймворк для запуска нескольких инструментов анализа смарт-контрактов (Mythril, Slither, Oyente, Manticore и др.) параллельно и сравнения их результатов. Автоматизирует аудит по нескольким движкам с единым отчётом.

git clone https://github.com/smartbugs/smartbugs cd smartbugs install/setup-venv.sh # Анализ контракта всеми инструментами ./smartbugs -t all -f contracts/MyContract.sol # Только Mythril + Slither ./smartbugs -t mythril slither -f MyContract.sol # JSON-вывод результатов ./smartbugs -t slither -f MyContract.sol ./reparse results ./results2csv -p results > results.csv
Blockchain / Web3

Docker-образ от Trail of Bits со всеми инструментами безопасности Ethereum в одном контейнере: Slither, Echidna, Manticore, Etheno, solc-select. Готовая среда для аудита смарт-контрактов без настройки зависимостей.

# Запуск с монтированием текущего проекта docker run -it -v $PWD:/home/user/project trailofbits/eth-security-toolbox # Внутри контейнера: cd /home/user/project slither . echidna-test contracts/MyContract.sol --contract TestMyContract # Переключить версию компилятора solc-select install 0.8.20 solc-select use 0.8.20
Blockchain / Web3

⚠️ Инструмент устарел (deprecated). Инструмент Flashbots для анализа MEV (Maximal Extractable Value): обнаружение arbitrage, liquidations, sandwich-атак и front-running в блоках Ethereum. Парсит транзакции, классифицирует MEV-стратегии и вычисляет прибыль. …

git clone https://github.com/flashbots/mev-inspect-py cd mev-inspect-py # Через Docker (рекомендуется — требует PostgreSQL) cp .env.example .env # вписать ETH_RPC_URL docker-compose up -d # Inspect конкретного блока poetry run inspect-block --block-number 12965000 # Inspect диапазона блоков poetry run inspect-many-blocks --start-block 12965000 --end-block 12965100