# SCAM-attack “Отравление адреса”

By [Solomon](https://paragraph.com/@cryptonacademy) · 2023-04-17

---

В последнее время наблюдается увеличение адресной атаки, при которой злоумышленники отправляют 0$ на кошелек. **На 2 декабря** было зафиксировано, что более **340 тысяч адресов** были подвержены этой атаке, и в результате **99 адресов пострадали**, что привело к ущербу в размере более **1,64 млн долларов США.**

Предпосылка
-----------

Последние отчеты об осмотрах рисков в сети указывают на распространенность нулевых переводов в сетях **ETH и BSC**. Данные транзакций BSC были взяты как пример, показывающий, как это происходит. В случае, когда владелец кошелька A отправляет обычную транзакцию на сумму **452$ BSC-USD** кошельку B, злоумышленник C незамедлительно отправляет туда же **0$ BSC-USD**. В результате этого, кошелек A автоматически отправляет обратно **0$ BSC-USD** на кошелек C, объединяя обе транзакции в одной.

![Вот что появляются в списке пользовательских транзакций](https://storage.googleapis.com/papyrus_images/2735d95062472bebd36f531a776f85c19677c062efea71af806df37448f0164c.png)

Вот что появляются в списке пользовательских транзакций

Эта операция может отображаться в списке пользовательских транзакций, что [вызывает](https://www.reddit.com/r/binance/comments/z2r1j3/is_this_an_attack_on_the_binance_chain_0_ust/) беспокойство и недоверие у сообщества.

![](https://storage.googleapis.com/papyrus_images/3664ab2a33d432a78f94d4b231c86b7e07fd6f7284888cf71d3dfec8ac914c69.png)

Намерение атаки
---------------

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

*   Хакер отслеживает данные о нескольких стейблкоинах, которые уже были переведены в сети и использует эту информацию, чтобы перехватить данные о переводе между пользователями A и B.
    
*   Хакер тщательно создает хакерский адрес C, имеющий те же первые и последние цифры, что и адрес пользователя B. Используя специальные инструменты, наподобие Profanity, чтобы быстро сгенерировать адрес с теми же первыми и последними цифрами.
    
*   Затем, хакер идет на обман, предварительно передавая друг другу 0$ в своих кошельках. Когда жертва А копирует адрес из предыдущей транзакции, она случайно копирует адрес С, созданный хакером, и переводит средства на неверный счет.
    

![Перевод жертвы на нормальный адрес](https://storage.googleapis.com/papyrus_images/c19e3c063ddb217fca0d421b334250efa5a75d15c328868c45a8e23befb4efaa.png)

Перевод жертвы на нормальный адрес

![Взлом адреса жертвы, чтобы получить 0 долларов](https://storage.googleapis.com/papyrus_images/b9c3b995064e5ebd22f5535635338f9834ed7c91d32556dc8174fbbfff45030b.png)

Взлом адреса жертвы, чтобы получить 0 долларов

![Жертва переводят деньги на адрес хакера](https://storage.googleapis.com/papyrus_images/a091801ef0d14e2fa2426a97405397fbaa54a093a28d69faa6dfb0955a7f8340.png)

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

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

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

Тенденция атаки
---------------

По данным на 2 декабря, количество атак на BSC и ETH достигло **290 000** и **40 000** соответственно, с более чем **150 000** и **36 000** затронутыми адресами соответственно.Атаки на обе цепочки продолжают усиливаться, причем **BSC начал расти с 22 ноября**, а **ETH - с 27 ноября**.Обнаружена закономерность во времени нападений, с минимальным количеством атак **с 17:00 UTC до 0:00 UTC ежедневно**, что говорит о том, что нападающие находятся в азиатском часовом поясе.

![](https://storage.googleapis.com/papyrus_images/c5651a39d32b79f5bf5f3ceb23dac7d604a9db1dbc3a3d35f7c84e5e89c0108b.png)

**Количество взломанных адресов на 2 декабря составило 99,** общая сумма украденных средств - **1 640 000 USD**. С увеличением числа целей нападающих ожидается, что в скором времени большее количество пользователей станут жертвами мошенников.

![](https://storage.googleapis.com/papyrus_images/25c10d9aa48860853b602147db02912f18f741cd4d491c62c11b5c5cc27f9a19.png)

![](https://storage.googleapis.com/papyrus_images/592277597ef2d9846f0f6a3de7eb5d716fd9e84e0545f23d36a3abee03cd6c05.png)

Была произведена аналитика стоимости атаки злоумышленником, и общая стоимость в настоящее время составляет около **25 000 USD (46 BNB + 9 ETH)**. Злоумышленник сфокусировался на **BSC-USD и USDT**, так как эти монеты широко используются и имеют большие пользовательские запасы.

![](https://storage.googleapis.com/papyrus_images/8e8c72351bcc780e02d3bcf85041be51cb4d1721be0404cd02748a9f2a603480.png)

![](https://storage.googleapis.com/papyrus_images/d78eefe2b3ba99319ac52f38fc523fb9579f166ac904e170f899a84587d1c724.png)

Отслеживание хакера
-------------------

Команда X-explore и WuBlockchain вместе отслеживают деятельность одного из злоумышленников, который связан с двумя крупными централизованными биржами.По данным, адрес источника для его атак связан с [OKX.com](http://OKX.com), и он использует Transit.Finance кросс-чейн мост, чтобы переводить средства из TRON в BSC. Украденные средства в конечном итоге переводятся на [Huobi.com](http://Huobi.com), также через кросс-чейн мост.

![](https://storage.googleapis.com/papyrus_images/5b14977b1ed90205476dc1b151e6afa35a456cf8e68050e5616d9cff22c090f6.png)

Продолжим и проследим поток украденных средств до источника. Сначала адрес жертвы **0xe17c2b2b40574d229a251fe3776e6da2cc46aa5e** переводит в общей сложности **1300$** на адрес злоумышленника **0x720c1cfe1bfc38b3b21c20961262ad1e095a6867** двумя частями. Далее злоумышленник перечисляет средства на адрес **0x89e692c1b31e7f03b7b9cbb1c7ab7872ddeadd49**

![](https://storage.googleapis.com/papyrus_images/23a486c183568ba6d03cf5768138732d7fda197ba1b28bf1ca3702367a18e179.png)

Передача **10561$** была произведена злоумышленником через перекрестный перевод с помощью адреса**0x89e692c1b31e7f03b7b9cbb1c7ab7872ddeadd49**и txhash **0x72905bd839f682f795946d285500143ee7606e9690df2ad32968e878ad290d9f**,при использовании Transit.Finance контракта(**0 xb45a2dda996c32e93b8c47098e90ed0e7ab18e39**).Данные проводки были зафиксированы в журналах событий и средства были направлены в USDT цепочки TRON с адреса\*\*TLUKBw37BVWDZdhbGco2ZEfdMd5Cit8TMD \*\*и соответствующим txhash **716507136ad28717ffd5f2f437af753ff96d344d2bcbe83f24d801db49f5a884** в цепочке TRON.

![](https://storage.googleapis.com/papyrus_images/ae83b798300c1bf675db8533fca2acfc3ffba321ef65bc8d96da68c8c6122a3d.png)

![](https://storage.googleapis.com/papyrus_images/21e923bbb5ea7da5e678e4082691e65f1abe1e68aed1a45b3321b116b2b2d88e.png)

![](https://storage.googleapis.com/papyrus_images/92aeb6f93da7b797dab6000938a83e7effe33c7832a065d546a8bb13433932d4.png)

В конечном итоге, злоумышленник перевел с адреса **TLUKBw37BVWDZdhbGco2ZEfdMd5Cit8TMD** на биржу Huobi. Адреса для пополнения счета следующие: **TPtzsrCAG61QMwig3jZV8Px7Rd1WZVnRXG TDp7r3S1hJeiNfH1CvCVXeY8notY47nagJ**

![](https://storage.googleapis.com/papyrus_images/f6411131e856e033b1d17be9a3f70c480067cafcf23876d0d6577eaeee144cde.png)

![](https://storage.googleapis.com/papyrus_images/918ff59799ac41fba96c972d35f2bf018c56d2cf491fde0eae77e3800edb12f0.png)

Анализ принципа атаки
---------------------

**Случай злоумышленника 1:**

> _EOA:_ [_0xBAA1451bE8C33998CD43F375c2e67E79c1a104AD_](https://bscscan.com/address/0xBAA1451bE8C33998CD43F375c2e67E79c1a104AD) _CA:_ [_0x7ceBeb6035B231A73CB5Fb4119c2FbBC04Ec6fD1_](https://bscscan.com/address/0x7cebeb6035b231a73cb5fb4119c2fbbc04ec6fd1)

**Случай злоумышленника 2:**

> _EOA:_ [_0x616384a80f32aDb65243522971aE2ba7664B62E3_](https://bscscan.com/address/0x616384a80f32aDb65243522971aE2ba7664B62E3) _CA:_ [_0x6f00Ed594A6AceEf0E1A6FE023Ecd5Eb96c8665a_](https://bscscan.com/address/0x6f00Ed594A6AceEf0E1A6FE023Ecd5Eb96c8665a)

![](https://storage.googleapis.com/papyrus_images/e960b33bd30fc9c8d56f9e168ab2706c1050bc3a67579d47857e9d8fab81439e.png)

Хакеры используют различные адреса, чтобы переводить **0 BSC-USD** в пакетном режиме через контракты на адреса жертв.В сети **BSC** мошенники часто используют такие токены, как **BSC-USD, BUSD, USDC, ETH** и другие.Они обычно проводятся через вызов функции **transferFrom()**, хотя иногда используется ручной вызов функции **transfer()** для основной монеты. Однако принцип атаки остается тем же.

Ниже приводится пример атаки на контракт BSC-USD.

Функция **transferFrom()** используется злоумышленниками в транзакциях для атаки на контракт. Они могут заполнить значения параметров **sender, recipient и amount** для BSC-USD и осуществлять перевод нулевой суммы между любыми адресами. При этом они могут генерировать события **AuthorizeApproval() и TransferTransfer()**.

[https://phalcon.blocksec.com/tx/bsc/0x825a3281e1897239c01797e590d3d62c1f9ab4c323bd8484c142541ac77ad73e](https://phalcon.blocksec.com/tx/bsc/0x825a3281e1897239c01797e590d3d62c1f9ab4c323bd8484c142541ac77ad73e)

![](https://storage.googleapis.com/papyrus_images/3799be5e35d9feb7b2452c9427c2d53409967e67344c52e95b0e774a45903ffd.png)

Информации о транзакциях из Blocksec phalcon blockchain browser Исходный код **контракта BSC-USD** показывает, что **функция transferFrom()** последовательно вызывает функции **\_transfer()** и **\_approve()**.

![](https://storage.googleapis.com/papyrus_images/78e03d6e2cf5d88cc48365957af81a36a22e78eb95db55de70ce376d9486131f.png)

Функция **\_transfer()** имеет простое назначение. Сначала она удаляет нулевые адреса из транзакции, затем проводит вычитание денег у отправителя и добавление денег получателю, и, наконец, запоминает событие перевода.Для операций с вычитанием и добавлением используются функции **add() / sub()**, взятые из safemath библиотеки OpenZeppelin. Они защищают от переполнения и при возникновении ошибки возврата.

![](https://storage.googleapis.com/papyrus_images/cc25fce27512b79936c0e2852c9ed689abca1e4422da9ae4eb4958037c6f98aa.png)

Функция **\_approve()** также проверяет наличие нулевых адресов и изменяет значение авторизации. Она используется для вычисления параметров вызова функции **transferFrom()** в рамках утверждения. Это позволяет вычесть количество уже авторизованных токенов из передаваемой суммы, оставляя только оставшуюся сумму для авторизации.Функция **sub()**, используемая в этом процессе, взята из safemath библиотеки OpenZeppelin, и она защищает от ошибок переполнения. Однако, если весь процесс авторизации оставляет равную нулю сумму, значит, нет способа обнаружить эту транзакцию и она будет выполнена успешно, что может привести к большому количеству переводов нулевых сумм между адресами в сети. Злоумышленник должен будет лишь оплатить комиссию для получения желаемого результата.

![](https://storage.googleapis.com/papyrus_images/89b80e46d4b517224715c83f2b7f779212529b473b345ad38792f641514d6f6c.png)

**transfer()**

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

![](https://storage.googleapis.com/papyrus_images/b95ce511c35d42e5f3ef00b3fba4ec52bf542574d6e878637cbf6e671832287b.png)

**BNB** В ходе мониторинга деятельности злоумышленников были выявлены мошеннические атаки, осуществляемые путём перевода 0 BNB посредством использования тех же принципов, что и при фишинговых атаках, где первый и последний символы адреса совпадают. \* Транзакция атаки: [https://bscscan.com/tx/0x5ae6a7b8e3ee1f342153c1992ef9170788e024c4142941590857d773c63ceeb3](https://bscscan.com/tx/0x5ae6a7b8e3ee1f342153c1992ef9170788e024c4142941590857d773c63ceeb3)\*

![](https://storage.googleapis.com/papyrus_images/0e9f3fa386995cea6a87fef9046b275a714e02c57ff3322dc2f6a4d7ecea78e0.png)

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

Настоящий адрес: **0x69cb60065ddd0197e0837fac61f8de8e186c2a73** Хакерский адрес: 0x69c22da7a26a322ace4098cba637b39fa0a42a73

Рекомендации E-explore
----------------------

В настоящее время X-explore предоставляет возможность онлайн-мониторинга таких атак в режиме реального времени. Чтобы избежать дополнительного ущерба, мы рекомендуем:

*   Пользователи могут использовать приложения кошельков, которые помогают им различать адреса по цвету или другим подсказкам.
    
*   При переводе средств пользователи должны тщательно проверять исторические адреса транзакций, а лучше всего вести адресную книгу самостоятельно.
    
*   X-explore разработали и отображают эту атаку "отравления адресов" в виде базы данных, которая реализована на сервисе Dune: [https://dune.com/opang/first-and-last-address-construction](https://dune.com/opang/first-and-last-address-construction).
    

Оригинальная статья: [https://mirror.xyz/x-explore.eth/cL3d\_CyNujXq8XY7ueP4omNXx\_IY1EG5Dz0FD0vJ90M](https://mirror.xyz/x-explore.eth/cL3d_CyNujXq8XY7ueP4omNXx_IY1EG5Dz0FD0vJ90M)

---

*Originally published on [Solomon](https://paragraph.com/@cryptonacademy/scam-attack)*
