Экономический анализ для Solidity

Найдите ошибку, которая меняет деньги.

Scorpio анализирует публичные репозитории на Solidity, восстанавливает пути движения стоимости и выдаёт воспроизводимые доказательства раньше, чем ошибка дойдёт до баг-баунти или до продакшена.

Предпроверка до оплаты Оплата x402 в USDC Проверяемая выдача
ENGINE / LIVE CATALOGONLINE
STATE
VALUE
ACCESS
Знак Scorpio
127MODULES
49STATIC CHECKS
0Достижимые модулиОтпечаток развёрнутого движка
0Экономические семействаПокрытие, разложенное по риску
0Статические проходыОпубликованы в текущем каталоге
0Нечитаемые модулиКаталог читается от начала до конца
01 / МЕТОД

От репозитория к доказательству, которое можно проверить.

Scorpio ведёт каждый анализ как техническую цепочку хранения. Сначала решает, входит ли репозиторий в область работ, затем собирает, моделирует и ставит печать на результат.

01

Приём

Проверяет публичный URL, коммит и реальный объём собственного кода.

Бесплатно · без обязательств
02
{ }

Сборка

Разрешает проект Foundry и отделяет собственный код от зависимостей.

Изолированная среда
03

Экономическая карта

Отслеживает состояния, привилегии и пути, по которым может двигаться стоимость.

Контекст между контрактами
04

Проходы

Запускает подходящие семейства и ставит вперёд сигналы с экономическим эффектом.

Детерминированный движок
05

Выдача

Составляет отчёт с находками по приоритету и возвращает его вместе с точным проанализированным коммитом.

Воспроизводимый результат
02 / ДО ОПЛАТЫ

Проверьте, входит ли ваш репозиторий в область работ.

Предпроверка считает собственный и сторонний код на Solidity до того, как открыт хоть какой-то платёж, и делает это настоящий сервис: он клонирует репозиторий и читает его дерево, не собирая его и ничего из него не запуская. Это бесплатно, с лимитом обращений, и репозиторий, который не входит в область работ, отклоняется здесь, а не оплачивается, чтобы упасть потом.

  • URL и коммит определены
  • Собственный код отделён от стороннего
  • Цена зафиксирована до подтверждения платежа
SCORPIO / PREFLIGHTВ РАБОТЕ
git:
ПродуктПолный аудит · 149 USDC

Бесплатно, платить не нужно. Сервис клонирует репозиторий и считает его код на Solidity, читая дерево, не собирая его и ничего из него не запуская. Занимает несколько секунд и идёт с лимитом обращений.

04 / ИЗМЕРЕНИЕ

Больше полезного сигнала на одно предупреждение — в первом опубликованном бенчмарке.

На пяти официальных задачах CodeHawks Scorpio сопоставил 12 находок из официального списка против 5 у Slither, подняв при этом 26 предупреждений против 63.

09СЕНТЯБРЬ
2026
ДВИЖОК 890777…
i

Это небольшая выборка из пяти соревнований, а не доказательство общего превосходства. Колонка Scorpio измерена 9 сентября 2026 года на движке 890777033a8fc952…, в трёх одинаковых прогонах. Отпечаток развёрнутого движка показан вверху этой страницы: если он не совпадает, значит измерение сделано на более раннем движке и с сегодняшним не повторялось. Колонка Slither — версия 0.11.5 на тех же замороженных задачах, измерена 6 сентября; между этими двумя датами Slither не менялся.

!

Что представляют собой те 14, которые не сопоставились — называть их «неверными» было бы неточно: четыре имеют информационную важность (три замечания о контракте без событий и одно о допущениях по токену) — это контекст, который движок выдаёт намеренно и который не участвует в состязании списков уязвимостей; три говорят о коде правду — что возвращаемое значение перевода ERC-20 не проверяется, — которую соревнование не приняло как находку; и одна — это односторонний переключатель, который движок помечает как подозрение, потому что решать, задумано ли так, должен человек.

!

Из оставшихся шести пять — это та же ошибка, что и запись в официальном списке, только под другим именем. Сопоставитель требует, чтобы имя детектора совпадало с семейством метки, поэтому когда движок находит ошибку и называет её по причине, а не по следствию, счёт наказывает его дважды: метка считается ненайденной, а находка — неверной. Все пять пар проверены поштучно, на том же контракте, а в четырёх случаях — и на той же функции: замок, который никогда не закрывается в refund, — это реентерабельность CH-05; срок, который можно переписать, — CH-07; обход claimants без верхней границы — MC-08; подпись, не привязанная к реализации, — SP-01; дайджест без typehash — SP-02. Шестая говорит правду, которой в списке нет.

i

Это сопоставление сделано вручную и заинтересованной стороной: его выполнил тот, кто работает над движком. Поэтому главными на этой странице остаются машинные цифры. С учётом пяти признанных пар вышло бы 17 сопоставленных и 9 несопоставленных, то есть 65,4 % точности и 35,4 % полноты. Это сказано, чтобы было видно, откуда берётся разница, а не чтобы записать её себе в актив.

Scorpio52,6%
10 TP · 9 FP
SSlither7,9%
5 TP · 58 FP
48 официальных находок5 / 5 задач прогнано15 / 15 стабильных прогонов
05 / КАК ЭТО ПРОВЕРЯЕТСЯ

Движок, который измеряет сам себя.

Перед каждым детектором стоят два контракта: один написан так, чтобы детектор сработал, второй — почти такой же, но написан так, чтобы он не сработал. Любое изменение, ломающее хотя бы один из них, красит стенд в красный, а без зелёного стенда образ, который принимает заказы, не собирается.

0Контракты стендаНаписаны, чтобы проверять движок
0Заложенные дефектыЛовит все 201
0Здоровые образцыНе помечает ни одного
0% мутацийОт того, что вообще можно убить
i

Оценка мутаций намеренно меняет одну строку движка и проверяет, что стенд это заметит. Всё, что стенд не замечает, выписано поштучно с причиной: почему та строка не может изменить результат или какой случай понадобился бы, чтобы это проявилось. Сегодня непрочитанных не осталось.

06 / ПОКРЫТИЕ

Десять семейств, чтобы держать экономический риск в поле зрения.

Каждое семейство собирает проходы, которые ищут конкретный способ сломать инвариант, присвоить привилегии или увести стоимость.

01
±

Учёт

Балансы, округления, комиссии и сохранение стоимости.

6 проходов
02

Оракулы

Цены, свежесть, масштабы и зависимости, поддающиеся манипуляции.

4 прохода
03

Подписи

Повторы, домены, nonce и криптографические разрешения.

8 проходов
04

Привилегии

Роли, сеттеры, инициализация и повышение контроля.

7 проходов
05

Реентерабельность

Внешние вызовы и небезопасные изменения состояния.

4 прохода
06

Хранилище

Коллизии слотов, разметка и порча данных после обновлений.

4 прохода
07

Состояния

Невозможные переходы, блокировки и перескоки фаз.

6 проходов
08

Запертые средства

Пути вывода отсутствуют или обусловлены навсегда.

4 прохода
09
0x

Кодирование

Коллизии селекторов, calldata и допущения сериализации.

5 проходов
10

Случайность

Предсказуемые источники, влияющие на экономический результат.

1 проход
07 / РЕЗУЛЬТАТ

Выдача, которая оставляет след.

Отчёт связывает каждый сигнал с конкретным местом в коде и приходит вместе с точным коммитом, на котором он получен.

SCORPIO_REPORT
FINDING / ECONOMIC

Инвариант стоимости уязвим

HIGHCONFIDENCE 0.86

report.md
commit
tree
01

Находки по приоритету

Важность, уверенность, расположение и ожидаемый экономический эффект.

02

Техническое доказательство

Пути по коду и контекст, которого хватает, чтобы воспроизвести сигнал.

03

Происхождение

Точный коммит и дерево проанализированного клона, возвращаемые вместе с отчётом.

04

Что не было измерено

Если какой-то проход не дошёл до конца, заказ помечается INCOMPLETE, и отчёт об этом говорит. Молчание не выдаётся за «ничего нет».

08 / ПОЗИЦИЯ

Что Scorpio утверждает.
И чего не утверждает.

Даёт

  • Автоматический и повторяемый анализ
  • Приоритет по экономическому эффекту
  • Доказательства, привязанные к проанализированному коду
  • Точный коммит и печать отчёта
  • Явное состояние прогона

× Не обещает

  • Ноль ложных срабатываний
  • Полное покрытие уязвимостей
  • Всегда что-нибудь найти
  • Равнозначность аудиту, сделанному людьми
  • Автоматическое право на вознаграждение
09 / ВОПРОСЫ

Прежде чем запускать анализ.

Самые важные технические и коммерческие условия, изложенные без мелкого шрифта.

Читать полные условия
Заменяет ли Scorpio аудит, сделанный людьми?

Нет. Он сужает пространство поиска и даёт повторяемые доказательства, но не удостоверяет, что контракт безопасен, и не покрывает всех рассуждений человеческой проверки.

Что можно анализировать сегодня?

Публичные репозитории, совместимые с Foundry, принятые предпроверкой, не более 1 200 собственных файлов Solidity. Действующий продукт состояние сети не читает.

Когда происходит оплата?

Сначала выполняется бесплатная предпроверка. Если репозиторий входит в область работ, Scorpio возвращает точное предложение. Анализ начинается, когда платёж x402 проверен.

Что будет, если движок не справится?

Заказ остаётся в состоянии FAILED, и стоимость услуги возвращается согласно условиям. Сетевые комиссии, не относящиеся к Scorpio, в возврат не входят.

Сколько это занимает?

Каталог оценивает время работы действующего продукта примерно в пять минут. Это техническая оценка, а не SLA: размер, сборка и очередь могут изменить общее время.

Что означают DONE и INCOMPLETE?

DONE означает, что предусмотренная выдача завершена. INCOMPLETE означает, что есть частичная выдача с задокументированными ограничениями. PENDING и FAILED описывают прогон, который ещё идёт или не удался. EXPIRED появляется, когда прошли 30 дней хранения и выдача уже удалена.

Можно ли отправить приватный репозиторий?

В текущем продукте нельзя. Не отправляйте учётные данные, токены или приватные URL. Публичное предложение рассчитано на репозитории, доступные без аутентификации.

Как проверить результат?

Каждый заказ возвращает точный коммит и дерево проанализированного клона, поэтому любую находку можно указать на конкретной ревизии и пересмотреть. Версия движка, работающая в данный момент, публично доступна на /health вместе с отпечатком её содержимого.

SCORPIO / AUDIT-149

Прежде чем доверить стоимость,
проверьте код.

Предпроверка бесплатна и подтверждает область работ до создания запроса на оплату.

Проверить репозиторий