Сканер уязвимостей Substrate
Scans Substrate/Polkadot pallets for 7 critical vulnerabilities including arithmetic overflow, panic DoS, incorrect weights, and bad origin checks. Use when auditing Substrate runtimes or FRAME pallets.
AItrailofbits
official
Другое
Что делает навык
Skill систематически сканирует паллеты Substrate/FRAME на 7 критических уязвимостей, включая переполнение арифметики, DoS через паники, некорректные веса и неправильные проверки origin. Он предназначен для аудита рантаймов и паллетов, выявляя паттерны, способные вызвать сбои узлов или несанкционированный доступ.
Когда применять
- Аудит пользовательских паллет Substrate перед запуском
- Проверка кода рантайма FRAME на соответствие стандартам безопасности
- Оценка безопасности Polkadot parachains или standalone chains до релиза
- Валидация функций dispatchable extrinsic и расчёта весов
- Анализ логики валидации unsigned транзакций
Как работает
- Определить платформу: найти файлы .rs с маркерами Substrate/FRAME (например, #[pallet], DispatchResult) и проверить версию Substrate.
- Проанализировать dispatchable функции: проверить использование checked/saturating операций, отсутствие unwrap/expect, корректность весов и проверок origin.
- Выполнить поиск паттернов уязвимостей с помощью grep (например, rg 'unwrap()' или rg ' + ' для арифметики) в директории pallets/.
- Проверить расчёт весов через benchmarking framework и убедиться, что веса пропорциональны стоимости операций.
- Составить отчёт с таблицей покрытия для всех 7 паттернов, указав вердикт (found, clear, n/a) для каждого.
- Предоставить исправления для каждой выявленной проблемы со ссылками на файлы и строки.
Примеры запросов агенту
Проведи аудит паллеты Substrate на наличие критических уязвимостей, особенно переполнения арифметики и проблем с origin.
Проверь runtime код FRAME на соответствие паттернам безопасности, включая веса и валидацию unsigned транзакций.
Запусти сканирование уязвимостей для паллет в директории pallets/, используя Substrate Vulnerability Scanner.
Что понадобится
- Инструменты: cargo-fuzz, test-fuzz, benchmarking framework, try-runtime
- Среда: Rust-проект с зависимостями frame-* и файлами .rs, содержащими маркеры Substrate/FRAME
- Доступ к кодовой базе для выполнения grep-поиска по паттернам уязвимостей
Описание составлено по SKILL.md навыка, сверено 05.10.2026.
Как подключить
1Скачать навык
# возьмите папку навыка «substrate-vulnerability-scanner» из репозитория:
# https://github.com/trailofbits/skills
2Положить папку с
SKILL.md к навыкам ассистента# положите папку навыка туда, где ассистент ищет skills:
cp -r substrate-vulnerability-scanner/ ~/.claude/skills/substrate-vulnerability-scanner/
Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.