В npm нашли фейковый API WhatsApp, который ворует сообщения, контакты и токены
by Мария Нефёдова · Хакер — Xakep.RU · ПодписатьсяВ репозитории npm обнаружили вредоносный пакет, маскирующийся под легитимную библиотеку для работы с WhatsApp Web API. Малварь похищала переписку пользователей, выгружала контакты и давала атакующим доступ к аккаунтам жертв.
Пакет lotusbail — форк популярного проекта WhiskeySockets Baileys — существовал в репозитории минимум полгода и набрал свыше 56 000 загрузок. При этом он действительно предоставлял заявленную функциональность, что помогало ему оставаться незамеченным.
Специалисты из компании Koi Security, обнаружившие угрозу, пишут, что малварь похищала токены аутентификации WhatsApp и ключи сессий, перехватывала все входящие и исходящие сообщения, а также выгружала списки контактов, медиафайлы и документы.
«Пакет оборачивает легитимный WebSocket-клиент, который взаимодействует с WhatsApp. В результате каждое сообщение, проходящее через приложение, сначала попадает во враппер малвари, — объясняют исследователи. — Когда пользователь проходит аутентификацию, враппер перехватывает учетные данные. Когда приходят сообщения — он их считывает. Когда пользователь отправляет сообщения — он их записывает».
Украденные данные шифровались с помощью кастомной реализации RSA и нескольких слоев обфускации: манипуляции Unicode, сжатие LZString и шифрования AES. После этого информация уходила на серверы атакующих.
Помимо кражи данных, lotusbail мог привязывать устройство злоумышленника к WhatsApp-аккаунту жертвы через механизм сопряжения девайсов. Это давало атакующим постоянный доступ даже после удаления вредоносного пакета (до тех пор, пока пользователь вручную не отвяжет чужое устройство в настройках мессенджера).
По данным исследователей, в коде lotusbail использовались 27 разных ловушек с бесконечными циклами, которые сильно усложняли анализ малвари. Вероятно, именно это помогло вредоносу так долго оставаться незамеченным.
Разработчикам, которые использовали вредоносный пакет, рекомендуется как можно скорее удалить его из системы и проверить свои WhatsApp-аккаунты на наличие привязанных посторонних устройств.
Эксперты Koi Security подчеркивают: простого изучения исходного кода недостаточно, чтобы выявить подобные угрозы. Нужно отслеживать поведение приложения в рантайме, анализировать подозрительные исходящие соединения и активность во время процессов аутентификации при добавлении новых зависимостей.