Ниже — перевод статьи пользователя Harry на Medium. Содержание1 Не устанавливайте всё подряд1.1 Какие разрешения запрашивает расширение?1.2 Что оно делает?1.2.1 Шаг 1. Хищение данных входа1.2.2 Шаг 2. Кража кодов двухфакторной аутентификации1.2.3 Шаг 3. Хищение CSRF-токена и вывод2 Куда отправляются средства?3 Какие секреты мы обнаружили?4 Как обезопасить себя?
Не устанавливайте всё подряд
Недавно я наткнулся на проект, обещающий кэшбек с каждой транзакции, включая торговлю на централизованных биржах. Чтобы получить обратно 5 процентов, достаточно установить расширение для браузера. Если предложение звучит слишком хорошо, чтобы быть правдой, то скорее всего, это и есть обман. На момент обнаружения у приложения CCB Cash с ID в Chrome liachincjagnalnmahhaioaogkngbmhf был 181 пользователь. Сейчас приложение пропало из магазина.
Я изучил код и обнаружил в нём вредоносное поведение. Вредоносное расширение заинтересовано только в следующих монетах: BTC, ETH, BCH, BNB, LTC, XRP и ETC.
Какие разрешения запрашивает расширение?
После установки расширение запрашивает доступ с правом записи к различным доменам, включая Github, Exmo, Coinbase, Binance, HitBTC, LocalBitcoins и другим. Оно запрашивает доступ ко всем открытым вкладкам и к вашим cookies – этими разрешения часто злоупотребляют, похищая ваши активы с различных бирж и кошельков.
Что оно делает?
Если резюмировать одним предложением, то расширение похищает всю вашу конфиденциальную информацию в зависимости от домена. Например, на Binance оно похищает данные логина, коды двухфакторной аутентификации и CSRF-токены, после чего пытается автоматически вывести монеты.
Рассмотрим, как это происходит.
Шаг 1. Хищение данных входа
Расширение содержит код, который срабатывает при нажатии по кнопке входа и похищает вводимые почту и пароль, сохраняя их в LocalStorage и отправляя на свой сервер без нарушения нормального процесса входа на биржу.
Шаг 2. Кража кодов двухфакторной аутентификации
Когда вы осуществляете вход, расширение отслеживает вход двухфакторной аутентификации и ждёт, пока форма не будет отправлена. После этого оно переводит введённый код на свой сервер вместе с хранящимися в LocalStorage почтой и паролем из первого шага.
После входа расширение каждые 5 минут будет запрашивать у вас код Google Authenticator, который будет отправляться на его сервер. Это даёт злоумышленникам больше попыток, если они будут пытаться войти в ваш аккаунт и пропустят код, который отправлялся при входе.
Шаг 3. Хищение CSRF-токена и вывод
Когда вы просматриваете на Binance свой баланс, расширение похищает из вашего файла cookies CSRF-токен и отправляет его на свой сервер. После этого оно делает POST-запрос, чтобы завладеть балансом монет, и пытается незаметно их вывести.
Расширение похищает CSRF-токены, чтобы выполнить над ними функцию md5() и сделать POST-запрос /exchange/private/yserAssetTransferBtc для завладения вашим балансом. После этого расширение сортирует монеты по стоимости и пытается их вывести.
Если расширение обнаружит монету с балансом больше 0.01 BTC, которую можно вывести, оно перенесёт вас на страницу вывода монеты с самой высокой стоимостью, автоматически заполнит запрос на вывод и нажмёт кнопку автоматического вывода. Оно также размажет экран Binance, вставив в тело документа элемент div, выведя его на передний план и изменив текст подтверждения кода двухфакторной аутентификации. Это нужно, чтобы убедить вас, что вы вышли из сайта. Всё это происходит очень быстро, а вы даже не замечаете, что вас перенаправили со страницы.
Тогда пользователь вводит код двухфакторной аутентификации, чтобы «восстановить» сессию (не догадываясь, что он подтверждает вывод монет на адрес злоумышленника), после чего его попросят проверить почту. Конечно, пользователь получит лишь письмо о подтверждении вывода, но если он не станет читать содержимое письма и просто нажмёт ссылку, то подтвердит вывод и запустит процесс. То же самое происходит на Coinbase: периодические запросы кода двухфакторной аутентификации и похищение cookies и данных входа.
Если вы будете просматривать счета, расширение рассчитает актив с самой высокой стоимостью, также отправив стоимость всех ваших активов на свой сервер, и попытается вывести средства. Выглядит это так.
Это происходит при каждой загрузке страницы с вашими счетами, поэтому пользователь может случайно запустить вывод. Хитро. Таким образом расширение похищает ваши данные входа на биржу и пытается заставить вас подтвердить перевод средств злоумышленникам.
Куда отправляются средства?
Злоумышленники имеют следующие адреса:
- BTC – 16EegrNMdZ9Rxku6Za5neEFjMW57wkQr1S;
- ETH – 0x03b70dc31abf9cf6c1cf80bfeeb322e8d3dbb4ca;
- BCH – 1PCh7w6LdcEv1sWd5wtvkELHcWe5HumUi3;
- LTC – LRPChoyN8qLWENjo1dUjk2bESZjE7bQ6sP;
- BNB – 0x03B70DC31abF9cF6C1cf80bfEEB322E8D3DBB4ca;
- XRP – rGmdGrMjvxt6S3VjF4M78U2YMLPR6XLPSN;
- ETC – 0x4F53C9882Ba87d2D7c525dF2aEF2540EFB6e32e5.
Со времени запуска расширения в магазине Chrome 3 декабря 2018 года злоумышленники украли 23,23550279 BTC. Информаци будет правдивой, если предположить, что эти адреса используются только для этого расширения, и через них проходили только краденные средства).
Какие секреты мы обнаружили?
- адреса злоумышленников;
- серверы и домены;
- комментарии к коду на русском языке – очень вероятно, что за этим стоят русские.
Мы также прикрыли домен сервера злоумышленников, поэтому те, у кого установлено расширение, больше не станут его жертвами. Но мы всё равно призываем удалить расширение из браузера и изменить почту, а также пароли во всех криптосервисах, которыми пользуетесь.
Расширение выполняло вредоносные действия на следующих платформах: Exmo, Coinbase, Hbg / Huobi, HitBTC, Binance, LocalBitcoins, Blockchain, Bitfinex и MyEtherWallet.
Как обезопасить себя?
- Не устанавливаете непонятные программы, которые назойливо запрашивают права доступа;
- если вы что-то подозреваете, то вероятно так и есть;
- периодически анализируйте расширения, которые установлены в вашем браузере, и удаляйте неиспользуемые;
- если в браузере есть расширение, которым вы пользуетесь, поищите версию/альтернативу с открытым кодом или отключите автоматические обновления из магазина Chrome. Проверьте код или найдите надёжного человека, который сможет это сделать.
Больше данных ищите в .