Перейти к содержимому
buybitcoinsmart

Глоссарий / Приватность и безопасность

Отравление адресов

Другие названия: Подмена адресов.

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

Цель здесь в привычке: заходить в список транзакций кошелька, чтобы повторно использовать адрес, вместо того чтобы запросить у получателя новый. Злоумышленники перебором подбирают похожие адреса, совпадающие по первым и последним нескольким символам, а это все, что показывают большинство экранов кошельков и обозревателей блоков. В мае 2024 года один трейдер потерял 1155 обернутых биткоинов стоимостью около 68 млн $ из-за одной отравленной вставки.

Как это работает

У отравления адресов три этапа, и только последний касается вас.

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

Подбрасывание. В биткоине злоумышленник тратит пылевую сумму, обычно 330 или 546 сатоши, с похожего адреса на ваш. Ваш кошелек фиксирует входящий платеж, и в поле отправителя теперь отображается адрес, который на глаз не отличить от того, который вы действительно используете. Некоторые кампании вместо этого отравляют в обратную сторону, отправляя с адреса, похожего на адрес биржи для пополнения, который вы продолжаете вставлять при своих выводах.

Ожидание. Недели спустя вы собираетесь отправить средства. Вы прокручиваете историю, находите «адрес, который я использовал в прошлый раз», копируете, вставляете, подтверждаете. Транзакция действительна, подписана правильно и необратима с момента подтверждения примерно через десять минут. Отдела по борьбе с мошенничеством нет, потому что на уровне протокола мошенничества не было: вы заплатили ровно тому, кому велели сети заплатить.

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

Почему это важно при покупке биткоина

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

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

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

Берите адрес с принимающего устройства, а не из истории. Аппаратный кошелек создает и показывает ваш адрес для получения на собственном экране. Trezor и Ledger оба требуют подтвердить его там, и вредоносная программа или подделанная история на компьютере не могут изменить то, что показывает устройство. Поступайте так же в обратном порядке при отправке: считывайте адрес назначения с экрана устройства, прежде чем одобрить операцию.

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

Вставка на 68 млн $

3 мая 2024 года трейдер собрался перевести 1155 обернутых биткоинов стоимостью тогда около 68 млн $ и сначала поступил ответственно: сделал небольшой тестовый перевод.

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

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

Отравление адресов vs пылевая атака

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

Отравление адресов vs вредоносная программа для буфера обмена

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

Не путать с

Часто задаваемые вопросы

Опасно ли получать платеж с похожего адреса?

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

Как безопасно проверить адрес перед отправкой?

Получите его от получателя в этот момент, а не из своего списка транзакций, затем сравните символы не только в начале и в конце строки, но и в середине. Если вы используете аппаратный кошелек, прочитайте адрес назначения на экране устройства перед подтверждением.

Действительно ли белые списки для вывода средств останавливают это?

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

Почему так много таких атак происходит в Ethereum, а не в биткоине?

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

Читайте далее

Связанные термины

Еще в разделе «Приватность и безопасность»

Читать эту страницу на английском