В то время как искусственный интеллект (ИИ) уже изменил множество отраслей, от здравоохранения и автомобилестроения до маркетинга и финансов, его потенциал сейчас испытывается на прочность в одной из наиболее важных областей блокчейн-индустрии - безопасности смарт-контрактов.

Многочисленные тесты показали большой потенциал блокчейн-аудита на основе ИИ, однако этой зарождающейся технологии все еще не хватает некоторых важных качеств, присущих человеческим профессионалам, - интуиции, тонких суждений и предметной экспертизы.

Моя собственная организация, OpenZeppelin, недавно провела серию экспериментов, подчеркивающих ценность искусственного интеллекта для обнаружения уязвимостей. Для этого использовалась новейшая модель OpenAI GPT-4 для выявления проблем безопасности в смарт-контрактах Solidity. Тестируемый код был взят из веб-игры по взлому смарт-контрактов Ethernaut, предназначенной для того, чтобы помочь аудиторам научиться искать уязвимости. В ходе экспериментов GPT-4 успешно выявил уязвимости в 20 из 28 задач.

В некоторых случаях простое предоставление кода и вопрос о том, содержит ли контракт уязвимость, дает точные результаты, как, например, в случае со следующей проблемой именования функции конструктора:

ChatGPT анализирует смарт-контракт. Источник: OpenZeppelin
ChatGPT анализирует смарт-контракт. Источник: OpenZeppelin

В других случаях результаты были более неоднозначными или откровенно плохими. Иногда ИИ приходилось подсказывать правильный ответ, задавая несколько наводящий вопрос, например, "Можете ли вы изменить адрес библиотеки в предыдущем контракте?". В худшем случае GPT-4 не мог найти уязвимость, даже когда все было достаточно четко прописано, например, "Gate one и Gate two могут быть переданы, если вызвать функцию из конструктора, как теперь войти в смарт-контракт GatekeeperTwo?". В какой-то момент ИИ даже придумал уязвимость, которой на самом деле не было.

Это подчеркивает существующие ограничения данной технологии. Тем не менее, GPT-4 заметно продвинулась вперед по сравнению со своей предшественницей GPT-3.5, большой языковой моделью (LLM), использовавшейся в первом запуске ChatGPT от OpenAI. В декабре 2022 года эксперименты с ChatGPT показали, что модель смогла успешно решить только пять из 26 уровней. И GPT-4, и GPT-3.5 обучались на данных до сентября 2021 года с использованием метода обучения с подкреплением на основе обратной связи с человеком, который предполагает использование обратной связи с человеком для улучшения языковой модели в процессе обучения.

Coinbase провела аналогичные эксперименты, получив сравнительный результат. В этом эксперименте для проверки безопасности токенов использовался ChatGPT. Если для значительной части смарт-контрактов искусственный интеллект смог отзеркалить ручную проверку, то для остальных ему было сложно предоставить результаты. Кроме того, Coinbase также привела несколько примеров, когда ChatGPT выдавал высокорискованные активы за низкорискованные.

Важно отметить, что ChatGPT и GPT-4 - это LLM, разработанные для обработки естественного языка, человекоподобных разговоров и генерации текстов, а не для обнаружения уязвимостей. При наличии достаточного количества примеров уязвимостей смарт-контрактов LLM может приобрести знания и шаблоны, необходимые для распознавания уязвимостей.

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

Например, команда разработчиков ИИ в OpenZeppelin недавно создала специальную модель машинного обучения для обнаружения атак типа reentrancy - распространенной формы эксплойтов, которые могут возникать при внешних обращениях смарт-контрактов к другим контрактам. Результаты ранней оценки показывают превосходную производительность по сравнению с ведущими отраслевыми инструментами безопасности, а коэффициент ложных срабатываний составляет менее 1%.

Соблюдение баланса между искусственным интеллектом и человеческим опытом

Проведенные эксперименты показывают, что хотя современные модели искусственного интеллекта могут быть полезным инструментом для выявления уязвимостей в системе безопасности, они вряд ли смогут заменить тонкие суждения и опыт специалистов по безопасности. GPT-4 в основном опирается на общедоступные данные до 2021 года и поэтому не может выявить сложные или уникальные уязвимости, выходящие за рамки обучающих данных. Учитывая стремительное развитие блокчейна, разработчикам крайне важно постоянно узнавать о последних достижениях и потенциальных уязвимостях в этой отрасли.

Будущее безопасности смарт-контрактов, скорее всего, будет связано с сотрудничеством между человеческим опытом и постоянно совершенствующимися инструментами искусственного интеллекта. Наиболее эффективной защитой от киберпреступников, вооруженных ИИ, будет использование ИИ для выявления наиболее распространенных и известных уязвимостей, в то время как специалисты будут следить за последними достижениями и соответствующим образом обновлять ИИ-решения. За пределами сферы кибербезопасности объединение усилий ИИ и блокчейна даст еще много положительных и революционных решений.

ИИ сам по себе не заменит человека. Однако аудиторы-люди, научившиеся использовать инструменты ИИ, будут гораздо эффективнее, чем аудиторы, закрывающие глаза на эту развивающуюся технологию.

Марико Вакабаяси - руководитель направления машинного обучения в компании OpenZeppelin. Она отвечает за прикладной ИИ/МЛ и инициативы в области данных в OpenZeppelin и Forta Network. Марико создала общедоступный API сети Forta Network и руководила проектами по обмену данными и открытому исходному коду. Ее система искусственного интеллекта в Forta позволила обнаружить взломы блокчейна на сумму более 300 млн долл. в режиме реального времени еще до их совершения.

Источник