Ловим скамера через отслеживание криптовалюты

4 Февраля 2023 (ред)

В этой статье я покажу:

  • Как используя основы финансовых расследований и OSINT мы можем доказывать аффилированность криптовалютных адресов
    Как в результате анализа транзакций двух и более ETH-адресов мы можем объединять их в кластер (т. е. множество адресов, контролируемых одной сущностью)
    Как изменяется набор данных об экономической деятельности злоумышленника после объединения адресов в кластер*

Начнем, благословясь!

Самый популярный onchain detective ZachXBT однажды запостил следующий твит:

Для несведущих в английском поясняю. С помощью фишингового сайта хакер получил доступ к адресу жертвы и украл 3 токена типа ERC-721 (NFT). Сразу после кражи (то есть после отправки токенов с адреса жертвы на свой адрес, 0x864875aef79B107221bEE89C8ff393BD2B666d96) хакер продал NFT на маркетплейсе Opensea.io. Затем преступная прибыль была отмыта через миксер Tornado. Cash.

Хоть и руки чешутся скорее вбить целевой адрес в https://etherscan.io, мы с вами остановимся на берегу и обратимся к теории. Преступник сначала украл, а затем продал токены, которые используют инфраструктуру блокчейна Ethereum.

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

Давайте попробуем узнать, откуда на адресе хакера 0×8648… появился ETH, необходимый ему для оплаты комиссий.

Такое направление в расследовании называется поиском источника происхождения средств

Открываем Etherscan, вставляем адрес, смотрим первые транзакции. Они будут раположены в самом низу страницы.

А вот и нужные нам: 1, 2. Отправитель средств в таблице транзакций всегда отображается слева от плашки IN (входящая транзакция) или OUT (исходящая транзакция)

Итак, источник средств мы определили, это адрес 0xA474cE48300D91334339fb5aDeF99A1B11B1cfe6. Что мы можем извлечь из этой информации?

В нашем случае первый адрес хакера, 0×8648… (он же Fake_Phishing5435 на картинке выше), никогда не получал средств до совершения обнаруженных нами транзакций. Значит, адрес 0xa474… является адресом-спонсором (или funding address) в отношении адреса хакера, или 0×8648…, или Fake_Phishing5435.

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

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

Наиболее интересным направлением в случае адреса-спонсора будет попытка обнаружить подозрительные транзакции (например, кражу NFT). Для этого открываем адрес в Etherscan.io и переходим в раздел «ERC-721 token Txns», именно этот раздел отвечает за трансферы NFT.

Видим четыре транзакции, две входящие, две исходящие. Первая NFT, Mutant Ape Yacht Club (MAYC), была продана спустя полчаса после получения. Вторая, Azuki, спустя 9 (!) минут. Seems suspicious for me!

Но как нам доказать, что эти транзакции не обычная купля-продажа, а самая настоящая кража? По последствиям!

Для продажи MAYC необходимо обращаться к смарт-контрактам маркетплейса Opensea. При взаимодействии с ними площадка автоматически сгенерирует вам профиль, доступный по ссылке вида «https://opensea.io/ETH_Address».

Добавлю также, что Opensea.io активно сотрудничает с правоохранителями, и также активно помогает жертвам. В случае взлома украденные токены блокируются, а аккаунт хакера отлетает в бан, его профиль становится недоступным.

Попробуем открыть профиль адреса 0xa474… и изучить историю транзакций. Для этого перейдем по ссылке https://opensea.io/0xA474cE48300D91334339fb5aDeF99A1B11B1cfe6.
oops! the address was banned

Теперь про адрес-спонсор нам известны два факта: он перевёл на адрес хакера деньги, использованные потом как комиссию, а также проводил сомнительные транзакции с NFT, за что был забанен на Opensea.io.

Целевой адрес также проводил сомнительные транзакции с NFT и был забанен на Opensea.io.

Теперь давайте узнаем, куда отправлялись преступно нажитые монеты. Для этого изучим транзакции в хронологическом порядке и попробуем найти входящие транзакции сразу после продажи (возможно) украденных NFT. Так мы определим объем преступно нажитых средств.

Искомые транзакции обнаруживаются в разделе Internal Txns:

Итого хакер получил 23,8 ETH. Из этих средств больше половины (13 ETH) были отправлены на адрес 0x945b4a77649Ebe89eABAf03F78A0C8993f99bd41, 6 ETH были отправлены на целевой адрес хакера. Кто еще отправлял украденные монеты на адрес 0x945b…? Целевой адрес!
транзакции вывода украденных средств выделены желтым

Давайте выясним, для чего использовался адрес 0x945b… Для этого опять изучим транзакции в хронологическом порядке, нам интересны все входящие и исходящие транзакции после получения адресом украденных средств.

Первые украденные средства пришли от адреса-спонсора (13 ETH). Далее адрес 0x945b аккумулировал, предположительно, украденные средства с нескольких других адресов, включая целевой адрес. Затем деньги, как и писал ZachXBT, были выведены в миксер Tornado. Cash

Отправленные в миксер деньги были сгруппированны в два платежа по 100 ETH, из которых 125 ETH изначально принадлежали целевому адресу, 13 ETH адресу-спонсору, остальные 62 ETH другим адресам.

Получается, что-либо хакер владеет всеми пятью адресами и использует 0x945b как промежуточный пункт перед отмывом денег, либо владелец 0x945b является отдельным преступником (отмывателем денег), чьими услугами пользуется несколько преступников одновременно.

Давайте кратко изучим другие адреса хакера: как видно из графика, они тоже взаимодействовали с NFT на Opensea. Воспользуемся старым методом проверки на благонадежность и… один из адресов в бане на Opensea! Второй адрес не в бане, но фигурирует в расследовании ZachXBT. По ссылке можно узнать имена и посмотреть на лица наших героев, опасных киберпреступников.
Mathys and Camille together

Товарищи Матис и Камил из романтичной Франции жестко обосрались, выложив в личном Твиттере скриншот одного из своих профилей на Opensea c украденными ранее NFT. Этот профиль фигурирует в нашем расследовании, на графе это адрес 0x5bb51…

Признаться, я даже немного расстроился на этом этапе. Как так, блин, только начали, а за нас уже всех нашли!

Но я решил на Матисе и Камиле не останавливаться и пойти немного дальше и попытаться разбавить мое расследование одухотворенными европейскими лицами…

Вернемся к адресу-спонсору. У адреса-спонсора, как и большинства адресов в сети Ethereum, есть свой адрес-спонсор (за рекурсию извените). Давайте его найдем!

В этот раз адрес-спонсор подписан в обозревателе блоков как Fake_Phsihing5099. Комментарии об аффилиации всех адресов фигурирующих в расследовании, как мне кажется, излишни с:

Обнаружив новый адрес-спонсор я решил пойти в сторону final destination of the funds и понять, куда именно Fake_phishing5099 отправлял грязыне деньги.

Разобрав все транзакции, я обнаружил интересный адрес 0x27429f480a3E2a69D7E4D738EBc54AeB4096eb43.

Владелец этого адреса, согласно топику на сайте epicnpc.com, занимается спам-рассылкой в Discord (именно в Discord многие пострадавшие получили фишинговые ссылки).

Diwan Nuri (судя по содержанию темы, именно так зовут владельца адреса) был настолько дальновиден и мудр, что зарегистрировал аккаунт на форуме на свою личную почту.

Этого ему было мало, а потому он решил еще и кинуть одного из своих потенциальных клиентов, запалив в добавок к почте свой ETH-адрес.

Судя по обнаруженной записи, Диван закончил немецкую школу Aletta-Haniel-Gesamtschule, а ныне зарабатывает спамом и скамом.

Итак, изучив 6 криптовалютных адресов и их транзакции мы выяснили, что:

5\6 исследуемых адресов взаимодействовали с NFT
4\6 исследуемых адресов были вовлечены в незаконную активность и получили за это бан на Opensea
4\6 исследуемых адресов "скидывались" для вывода средств в миксер Tornado.Cash
2\6 адресов фигурируют в уже существующих расследованиях
6\6 адресов имеют тесные экономические связи
Диван не так прост, как кажется!

На мой взгляд обнаруженных фактов достаточно, для объединения адресов в кластер. Какие именно адреса объединяем:

Целевой адрес 0x864875aef79B107221bEE89C8ff393BD2B666d96
Адрес-спонсор целевого адреса 0xA474cE48300D91334339fb5aDeF99A1B11B1cfe6
Доп. адрес хакеров №1 0x38dB16DA44A61560e04E94DCb71c3E64Aa94d318
Доп. адрес хакеров №2 0x5bb5180D8b84d754F56e2BC47Dc742d0f5Ac37FE
Адрес для отмыва 0x945b4a77649Ebe89eABAf03F78A0C8993f99bd41
Fake_Phishing5099 0xdE09020653cA303CFC143d23A18183299558065F

Что мы сможем узнать после объединения адресов в кластер?

Во-первых, товарищи заработали на таком скаме около $1,7M. Один миллион отправили в миксер Tornado. Cash

Во-вторых, чуть больше $300k они отправили на централизованные обменники (это которые с KYC-процедурами, сотрудничающие с law enforcement и т. д.). $285k пришлось на биржу Coinbase.

В-третьих, мы получим куда более подробный список контрагентов этой преступной группы, что (как в случае с Диваном, например) может привести к интересным находкам. А правоохранителям это может помочь отследить украденные деньги до бирж и обменников.
Выводы

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

Что мы можем сделать конкретно?

Искать источник средств (адрес-спонсор) и финальную тчоку назначения средств. Подробно анализируем транзакции каждого исследуемого адреса.

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

Если доступный вам софт не поддерживает кластеризацию, рекомендую экспортировать транзакции нужных вам адресов из Etherscan.io и затем сводить несколько таблиц в одну.

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

Использованный софт: Etherscan.io, Google, Чейнализис.
https://t.me/osint_club_channel

ShadowMan ShadowMan + 28
Опубликовано в Взгляд из тени
Для ответа вы можете авторизоваться