Фьючерсы
Доступ к сотням фьючерсов
TradFi
Золото
Одна платформа мировых активов
Опционы
Hot
Торги опционами Vanilla в европейском стиле
Единый счет
Увеличьте эффективность вашего капитала
Демо-торговля
Введение в торговлю фьючерсами
Подготовьтесь к торговле фьючерсами
Фьючерсные события
Получайте награды в событиях
Демо-торговля
Используйте виртуальные средства для торговли без риска
Запуск
CandyDrop
Собирайте конфеты, чтобы заработать аирдропы
Launchpool
Быстрый стейкинг, заработайте потенциальные новые токены
HODLer Airdrop
Удерживайте GT и получайте огромные аирдропы бесплатно
Launchpad
Будьте готовы к следующему крупному токен-проекту
Alpha Points
Торгуйте и получайте аирдропы
Фьючерсные баллы
Зарабатывайте баллы и получайте награды аирдропа
Инвестиции
Simple Earn
Зарабатывайте проценты с помощью неиспользуемых токенов
Автоинвест.
Автоинвестиции на регулярной основе.
Бивалютные инвестиции
Доход от волатильности рынка
Мягкий стейкинг
Получайте вознаграждения с помощью гибкого стейкинга
Криптозаймы
0 Fees
Заложите одну криптовалюту, чтобы занять другую
Центр кредитования
Единый центр кредитования
Погружаюсь в последнее время в безопасность смарт-контрактов и понял, что большинство разработчиков не используют правильные инструменты, чтобы выявлять уязвимости до того, как код уйдет в прод. На самом деле это критический пробел, потому что после того, как ваш код попадает в mainnet, исправление проблем безопасности превращается в настоящий кошмар.
Дело в том, что смарт-контракты настолько безопасны, насколько безопасен тот код, который для них написан. Они неизменяемы и прозрачны — это отлично для беспроблемного доверия, но ужасно, если в коде есть баг. Поэтому я начал составлять карту ландшафта инструментов для безопасности смарт-контрактов, которые доступны прямо сейчас, и, честно говоря, экосистема довольно крепкая, если знать, куда смотреть.
Большинство атак, которые я вижу, подчиняются предсказуемым схемам — reentrancy loops, которые выводят средства, frontrunning, когда злоумышленники наблюдают за ожидающими транзакциями и встраиваются в очередь с более высокими комиссиями за gas, или проблемы с переполнением целых чисел (integer overflow), когда числа неожиданно “оборачиваются”. Это не новые проблемы, но они продолжают происходить, потому что разработчики либо не знают о них, либо тестируют неправильно.
Вот где нужны правильные инструменты. MythX, вероятно, самая всеобъемлющая платформа для этого — использует продвинутый символьный анализ, чтобы находить уязвимости в контрактах Ethereum. У них есть бесплатный тариф для фрилансеров и планы для предприятий — для более крупных операций. Разработческое сообщество действительно уважает ее, потому что она по-настоящему инновационная.
Для тестирования особенно выделяется Echidna: она использует fuzzing, чтобы генерировать случайные входные данные и находить граничные случаи, которые обычное тестирование может пропустить. Она легко интегрируется с Remix и Truffle, поддерживает несколько языков, таких как Solidity и Vyper. Property-based testing с Echidna — по сути, один из способов поймать “странное” и трудновыявляемое.
Slither — еще один инструмент, которым я пользуюсь постоянно: он выявляет проблемы с reentrancy, неинициализированные указатели, overflows и underflows. Анализ байткода вскрывает недостатки, которые не видны, если смотреть только исходный код. Работает с Solidity вплоть до 0.8.x.
Для анализа контрактов Cyberscan от Cyberscope дает вам информацию о владении, детали по прокси, вложения к аудитам — все в одном месте. Similarityscan позволяет проверить, оригинальный ли контракт или это просто скопированный код. Оба решения экономят время, когда вы оцениваете проекты.
Truffle Security интегрируется с MythX и предлагает непрерывный мониторинг — сканирует ваши контракты во время разработки и продолжает следить за новыми уязвимостями. Их база данных обновляется постоянно по мере того, как угрозы становятся реальностью. Такой подход к постоянному наблюдению особенно ценен, потому что ландшафт угроз никогда не перестает меняться.
Manticore — это open-source вариант, если вам нужен полный контроль: использует символьное выполнение, чтобы исследовать все пути через ваш контракт и генерировать тестовые случаи. Работает с Truffle и Mythril, поддерживает несколько языков. Отлично подходит для аудиторов безопасности, которым нужна глубокая видимость происходящего.
ZeppelinOS упрощает весь процесс за счет строительных блоков OpenZeppelin, инструментов тестирования и реестра заранее прошедших аудит контрактов, которые можно переиспользовать. Панель управления делает управление несколькими контрактами менее болезненным.
Signaturescan делает упор на обнаружение паттернов: обширная база данных известных уязвимостей и взломов, которая постоянно обновляется. Она разработана специально для Ethereum.
Safescan отвечает за сторону прозрачности: проверка команд, анализ транзакций, отчеты по истории кошельков. Приватность — это хорошо, но важна и ответственность.
Честно говоря, лучший подход — выстроить несколько уровней инструментов безопасности смарт-контрактов вместо того, чтобы полагаться на один. Разработчикам нужно либо проводить аудит самостоятельно, либо нанимать аудиторскую компанию до запуска в mainnet, потому что исправлять уязвимости постфактум очень тяжело. Безопасность — это тоже не разовая история: это постоянный мониторинг и актуализация по мере появления новых векторов атак.
Если вы строите на Ethereum или других блокчейнах, то вложение времени в правильные инструменты безопасности сейчас спасет вас от катастрофических потерь позже. Инструменты существуют, они проверены, они работают. Вопрос только в том, используете ли вы их на самом деле.