Атака АРА. Детальный разбор и методы защиты

13.12.2022
16 мин
992
0

В последние недели участились «атаки отравления» АРА (Address Poisoning Attack) с переводами $0 USD. По данным на 2 декабря в сети «отравлены» свыше 340 тыс. адресов. Всего мы имеем 99 адресов жертв и свыше $1,64 млн украденных средств.

В этой статье X-explore дает всесторонний анализ таких атак, отслеживает злоумышленников ончейн, а также показывает подробную схему реализации АРА.

Хотелось бы, чтобы приложения-кошельки активизировали такие оповещения о рисках. А обычные пользователи были в курсе подобных угроз при переводе крипты.

Перевод статьи от x-explore.eth

История

Недавно наш ончейн-мониторинг рисков показал, что в сетях ETH и BSC часто бывают переводы по $0 USD. Мы взяли данные транзакций BSC-chain в качестве примера, чтобы показать, как это происходит. 

Жертва A делает обычную транзакцию по переводу 452 BSC-USD Пользователю B. Но Пользователь B получет 0 BSC-USD от Атакующего C. В это же время, в той же транзакции хеша сам Пользователь A по ошибке переводит 0 BSC- USD на адрес Aтакующего C (реализация операции перевода 0 BSC-USD «туда-обратно»):

Пример атаки APA

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

Скрины сообщений про атаку

Цели атаки

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

  1. Он отслеживает информацию о переводе нескольких стейблкоинов ончейн. Например, он перехватывает информацию о переводе, который адрес Жертвы А часто отправляет Пользователю В.
  2. Далее создает хакерский Адрес C с теми же первыми и последними цифрами, что и адрес пользователя B. Затем жертва A и хакерский адрес C передают друг другу 0 монет. (Здесь злоумышленник может использовать инструмент генерации чисел Profanity, чтобы за несколько секунд сгенерировать адрес с теми же первыми и последними 7 цифрами, что и адрес пользователя).
  3. В следующий раз, когда Жертва А невнимательно копирует адрес исторической транзакции, очень легко скопировать именно Адрес С, подготовленный хакером для уловки. Таким образом средства переводятся на неправильный счет.
Адрес пользователя

Жертвы переводят деньги на нормальные адреса:

Адрес злоумышленника

Хакерские адреса с переводами $0:

Хакерский адрес с переводами

Жертвы переводят деньги на хакерские адреса

Вот наши выводы по поводу атаки «address poisoning attack»:

  1. Во-первых, хакер делает так, чтобы его адрес отображался в истории транзакций пользователя. Цель — чтобы пользователя не досмотрел и принял его за доверенный контакт. То есть адрес, которому часто отправляет деньги.
  2. Во-вторых, хакер создает адрес, совпадающий с доверенным адресом по первым и последним цифрам. По ошибке его может использовать жертва для следующей транзакции.

Пользователи рискуют потерять капитал, так что будьте начеку!

Тенденции

На 2 декабря зафиксировано большое количество таких атак: 290 000 в сети BSC и 40 000 в сети Ethereum. А количество независимых адресов, затронутых атаками, превысило 150 000 и 36 000 соответственно.

С точки зрения трендов, сеть BSC начала подверга