Механизмы авторизации развиваются вместе с интернетом. Если раньше логин и пароль были основой входа в любую систему, то сегодня в Web2 доминирует авторизация через oAuth

(например, через Google или Facebook), а в Web3 — через кошелёк. Несмотря на удобство, обе модели несут в себе риски. В 2025 году атаки через уязвимости авторизации становятся всё более изощрёнными, особенно на стыке Web2 и Web3.

На cryptium.ru проанализированы ключевые векторы атак на современные модели авторизации и даны примеры того, как эксплуатируются доверительные цепочки между пользователем и сервисом.

Что такое oAuth и авторизация через кошелёк

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

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

Где появляются уязвимости

Проблемы возникают не в протоколах, а в их реализации:

  • oAuth часто неправильно внедряется на фронтенде: слабая валидация токенов, доверие к редиректам, отсутствие ограничений по времени действия;
  • в Web3 — уязвимость лежит в подписываемых сообщениях: многие пользователи не читают, что именно подписывают, а фишинговые сайты подменяют смысл.

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

Такие методы эксплуатируют психологические паттерны, привычки и неясность интерфейса. Особенно эффективно это работает в кросс‑платформенных связках, где oAuth используется для входа, а кошелёк — для операций.

Распространённые схемы атак

Наиболее частые методы компрометации:

  • Phishing через поддельные dApp-интерфейсы, маскирующиеся под популярные DeFi‑проекты;
  • Replay-атаки — повторное использование токенов oAuth при отсутствии защиты от повторной аутентификации;
  • Token injection — подмена access-токена в URI-запросе для доступа к чужим данным;
  • NFT-дропы и mint-платформы, собирающие подписи «вслепую» и запрашивающие разрешения на transfer или продажу.

Кроме того, существуют гибридные схемы, где Web2‑авторизация используется для получения доступа к Web3-кошельку через сторонние интерфейсы (например, через доверенные виджеты и iframe).

Как защититься

Противодействие требует как технических, так и поведенческих мер:

  • всегда проверять URL при авторизации и подписании;
  • использовать аппаратные кошельки, которые отображают сообщение на экране устройства;
  • ограничивать права токенов (например, использовать scope в oAuth);
  • вводить ограничения по времени действия токенов;
  • внедрять протоколы отзыва доступа (revoke) в интерфейсах.

Также важно, чтобы dApp‑разработчики обеспечивали прозрачность — подписываемое сообщение должно быть человекочитаемым и понятным по смыслу.

Выводы:

Безопасность авторизации в Web3 больше не сводится к наличию кошелька. Угроза не в технологии, а в том, как пользователь с ней взаимодействует. Пока oAuth и кошелёк продолжают жить параллельно, атаки будут происходить на стыке этих систем. Ключ к защите — прозрачные интерфейсы, сокращение доверительных посредников и обучение пользователей. В противном случае даже самая надёжная технология может обернуться уязвимостью.