Отравление адресов — это афера, в которой злоумышленник генерирует адрес-двойник, чьи первые и последние символы совпадают с символами адреса, которым вы уже пользуетесь, а затем подсаживает его в вашу историю транзакций dust- или нулевым переводом в расчёте на то, что однажды вы скопируете его вместо настоящего адреса. Сам подсаженный перевод ничего не крадёт: он не создаёт разрешений, не касается ключей и не даёт злоумышленнику никакого контроля над вашим кошельком — вся атака построена на ставке, что вы когда-нибудь ошибётесь при копировании. Поэтому защита поведенческая: никогда не берите адрес из истории транзакций, сверяйте середину адреса, а не только усечённые концы, и перед крупным переводом отправляйте небольшой тестовый. Ни один кошелёк не может отменить перевод, который вы одобрили, поэтому в полностью некастодиальном кошельке вроде WATS, где ключи держите вы, а WATS не держит ни одного, эта проверка перед подписью и есть настоящая последняя линия обороны.
Афера, эксплуатирующая копипаст
Большинство криптоафер атакуют ваши ключи или подписи. Отравление адресов бьёт по куда более уязвимому месту — по вашим привычкам. Злоумышленник никогда не касается вашего кошелька и никогда не просит ничего подписать. Он лишь устраивает так, чтобы в вашей истории транзакций появился адрес-двойник — и ждёт дня, когда вы скопируете его вместо настоящего. Одна невнимательная вставка — и перевод, предназначенный вашему же адресу или постоянному получателю, безвозвратно уходит злоумышленнику.
Как отравление работает на самом деле
Атака начинается с генерации. Криптоадреса достаточно длинны, чтобы злоумышленники могли дёшево перебирать vanity-адреса, совпадающие первыми и последними символами с вашим или с адресом того, с кем вы работаете, — ровно теми символами, которые показывают интерфейсы кошельков. Затем идёт подсадка. Иногда это крошечный «dust»-перевод в пару центов, отправленный на ваш адрес с адреса-двойника. В сетях EVM чаще используется перевод токенов с нулевой суммой: стандарт ERC-20 разрешает переводить нулевое количество, поэтому злоумышленник может вызвать transferFrom со ссылкой на ваш адрес, не имея никакого allowance, и всё равно сгенерировать совершенно корректное событие Transfer — которое обозреватели и ленты активности кошельков отображают как обычную транзакцию между вами и поддельным адресом. Ещё дешевле в расчёте на жертву одноразовые контракты токенов, которые пачками эмитируют сфабрикованные события Transfer для токенов, которых никто никогда не держал. Каким бы ни был метод, злоумышленнику это стоит немного газа, а результат один и тот же: в вашей истории теперь лежит убедительная приманка и терпеливо ждёт.
Почему это работает: усечение и доверие к истории
Ловушку эффективной делают две конвенции интерфейсов. Во-первых, кошельки и обозреватели почти повсеместно усекают адреса до чего-то вроде 0x1a2b…9f8e, поэтому двойник, подогнанный под эти видимые символы, неотличим с одного взгляда. Контрольная сумма адреса здесь не спасает: отравленный адрес — это валидный адрес с корректной контрольной суммой, просто принадлежащий кому-то другому, так что программе попросту нечего отбраковывать. Во-вторых, люди относятся к собственной истории транзакций как к доверенной адресной книге: «адрес, на который я отправлял на прошлой неделе» кажется безопасным для повторного использования. Отравление превращает именно это доверие в оружие. В поддельной записи нет ничего аномального; она стоит рядом с законными транзакциями, отформатирована идентично и часто повторяет усечённый вид адреса реального контрагента.
Что отравление может — и чего не может
Стоит сказать прямо: сама по себе отравляющая транзакция ничего не забирает. Получение dust не компрометирует ключи; нулевой перевод не выдаёт никаких разрешений; злоумышленник не получает никакой власти над кошельком. Вся атака — ставка на вашу будущую ошибку. Это хорошая новость: защита целиком поведенческая, и, в отличие от компрометации ключа, исправлять нечего. Игнорируйте dust (взаимодействие с неизвестными «подарочными» токенами — отдельное семейство афер), и приманка навсегда останется безвредной.
Почему аппаратные устройства и аутентификация не останавливают атаку
Именно здесь люди чаще всего ошибаются в оценке. Любой слой, защищающий ключ — аппаратное устройство, passkey, карта, которую прикладывают для аутентификации, — отвечает ровно на один вопрос: эту транзакцию одобряет тот самый человек? Отравление адресов этот факт никогда не оспаривает. Подпись подлинная, одобрение осознанное, ключ не скомпрометирован; неверен только адрес назначения. WATS NFC Metal Card наглядно показывает разницу: она вообще не хранит приватных ключей, её прикладывают для аутентификации к ключам, живущим в приложениях WATS, и она ближе к физическому ключу безопасности, чем к сейфу холодного хранения. Это делает её сильной защитой от того, что ваши средства переведёт кто-то другой, и абсолютно никакой защитой от того, что вы сами отправите средства на адрес, скопированный не из той строки истории. Проверка адреса назначения должна происходить на экране, вами, до одобрения — и именно поэтому подписывать вслепую то, чего вы не прочитали, — первая привычка, от которой стоит отказаться.
Привычки, делающие вас неуязвимым
Дверь закрывают четыре привычки. Никогда не копируйте адреса из истории транзакций — берите их из интерфейса получателя, с официальной страницы или из сохранённого контакта. Проверяйте больше, чем концы: перед подписью сверьте и середину адреса, ведь двойники подгоняются ровно под те концы, которые показывают интерфейсы. Пользуйтесь сохранённым контактом или сервисом читаемых имён для постоянных получателей, чтобы рутинные отправки вообще не требовали копирования. А при крупных или первых переводах отправьте небольшую тестовую сумму и подтвердите получение, прежде чем отправлять остальное. Сочетайте это с более широкой гигиеной из статьи о лучших практиках безопасности кошелька — и помните: момент подписи всегда остаётся последней линией обороны, тот же принцип действует и когда вы безопасно подключаете кошелёк к dApp.
Где здесь кошелёк вроде WATS
Ни один кошелёк не отменит перевод, который вы одобрили, поэтому практический вопрос в другом: оставляет ли ваш кошелёк решение в ваших руках и убирает ли то трение, из-за которого люди спешат. WATS полностью некастодиален: ключи держите вы, WATS не держит ни одного — в Ethereum, Arbitrum, Optimism, Base, Polygon, BNB Chain, Solana и TON. Что до трения, WATS списывает сетевые комиссии в одном токене, ATS, вместо нативного газового токена каждой сети — используя абстракцию аккаунтов ERC-4337 в EVM и LayerZero OFT, так что единый баланс ATS работает омничейн. Это не скидка: меняется то, каким токеном вы платите, а не то, сколько стоит транзакция. Меняется другое — поведение: та самая небольшая тестовая отправка, которую вы иначе пропустили бы из-за отсутствия газового токена в конкретной сети, становится тем, что доступно всегда. Собранный в виде комиссий ATS питает сжигание, которое уводит предложение со 100M к 30M, и WATS — первый и единственный кошелёк, сочетающий единый комиссионный токен на ERC-4337 и OFT с этим сжиганием; механика описана на странице комиссии ATS. Если после этой статьи вы сделаете один конкретный шаг, пусть он будет таким: перестаньте брать адреса из истории, а в следующий раз, когда будете платить на новый адрес в WATS, сначала отправьте небольшую тестовую сумму и сверьте середину адреса, а не только его концы, прежде чем одобрять остальное.
Часто задаваемые вопросы
Что такое атака отравления адресов?
Это афера, в которой злоумышленник генерирует адрес-двойник, совпадающий с видимыми первыми и последними символами используемого вами адреса, а затем подсаживает его в вашу историю через dust- или нулевой перевод. Сама атака ничего не забирает — она ждёт, когда вы позже скопируете поддельный адрес из истории и отправите на него средства. Защита поведенческая: никогда не берите адреса из истории и проверяйте больше, чем усечённые концы.
Мне пришли dust или странный токен с неизвестного адреса — я скомпрометирован?
Нет. Входящие переводы не могут украсть ключи, создать разрешения или управлять кошельком — кто угодно может отправить что угодно на публичный адрес. Риск возникает лишь если вы позже по ошибке скопируете адрес злоумышленника или начнёте взаимодействовать с контрактом неизвестного токена (отдельная схема мошенничества — просто не трогайте его). Игнорируйте dust — и ваши средства ровно так же в безопасности, как и раньше.
Защитит ли меня от отравления адресов аппаратное устройство или NFC-карта?
Нет, и WATS прямо объясняет почему. WATS NFC Metal Card не хранит приватных ключей; её прикладывают для аутентификации к ключам, живущим в приложениях WATS, и она ближе к физическому ключу безопасности, чем к сейфу холодного хранения. Аутентификация подтверждает, кто одобряет транзакцию, а не куда уходят средства, — а при отравлении адресов одобрение подлинное, неверен именно адрес назначения. Эту атаку побеждает только чтение адреса получателя до одобрения.
Как проверять адрес перед отправкой?
Сверяйте больше, чем концы: двойники генерируются специально под первые и последние символы, которые показывают интерфейсы, поэтому сравнивайте и участок в середине. Ещё лучше — исключите ручное сравнение для рутинных платежей, используя сохранённые контакты, а при крупных или первых переводах отправьте небольшую тестовую сумму и подтвердите её получение, прежде чем отправлять остаток. В WATS сетевые комиссии списываются в ATS, а не в нативном газовом токене каждой сети, поэтому такая тестовая отправка возможна в любой поддерживаемой сети без того, чтобы сначала доставать отдельный газовый актив.

