Xakep #305. Многошаговые SQL-инъекции
ИБ-компания JFrog сообщила, что обнаружила и помогла удалить из официального репозитория npm 25 вредоносных JavaScript-библиотек (см. список в конце).
В основном авторы вредоносных библиотек имитировали имена более популярных пакетов, маскируясь под них и надеясь, что разработчики случайно включат их в свои проекты, если опечатаются в названиях или не обратят внимания на происхождение пакета.
Библиотеки содержали различные типы вредоносного кода, то есть, похоже, были созданы разными хакерами, преследующими разные цели. Так, 17 из 25 пакетов предназначались для кражи токенов доступа Discord. Хотя на первый взгляд кажется, что это весьма странная цель, токены Discord — весьма ценный ресурс, работающий аналогично файлам cookie в браузерах, то есть позволяющий злоумышленникам получать доступ к чужим учетным записям без ввода пароля. В итоге токены часто продаются и приобретаются спамерами, которые используют их для получения доступа к учетным записям пользователей, а затем наводняют каналы Discord рекламой и вредоносными ссылками.
Еще 5 библиотек содержали код, который похищал переменные окружения из зараженных проектов. Эти переменные обычно содержат информацию об ОС, но в некоторых случаях также могут содержать ключи API и учетные данные для входа в облачные сервисы (то есть данные, которые любят собирать многие злоумышленники).
Самыми опасными были еще 3 пакета, которые позволяли хакерам запускать собственные команды в пользовательских системах с помощью кода на Python или шелл-команд.
Интересно, что исследователи называют авторов этих пакетов «новичками», поскольку те лишь копировали настоящие пакеты и внедряли в них вредоносную функциональность. Такая тактика требует минимальных усилий, и если бы пакеты не были обнаружены, атаки могли иметь высокую эффективность. Из-за этого эксперты полагают, что аналогичные вредоносные библиотеки могут наводнить npm в будущем.
Напомню, что в декабре прошлого года специалисты JFrog уже обнаруживали 17 похожих вредоносных библиотек, и с сожалением отмечали, что «публичные репозитории стали удобным инструментом для распространения вредоносных программ».
Пакет | Полезная нагрузка | Метод заражения |
node-colors-sync | Хищение токенов Discord | Имитация (colors) |
color-self | Хищение токенов Discord | Имитация (colors) |
color-self-2 | Хищение токенов Discord | Имитация (colors) |
wafer-text | Хищение переменных окружения | Тайпсквоттинг (wafer-*) |
wafer-countdown | Хищение переменных окружения | Тайпсквоттинг (wafer-*) |
wafer-template | Хищение переменных окружения | Тайпсквоттинг (wafer-*) |
wafer-darla | Хищение переменных окружения | Тайпсквоттинг (wafer-*) |
lemaaa | Хищение токенов Discord | Скрытая функциональность |
adv-discord-utility | Хищение токенов Discord | Неизвестно |
tools-for-discord | Хищение токенов Discord | Неизвестно |
mynewpkg | Хищение переменных окружения | Неизвестно |
purple-bitch | Хищение токенов Discord | Неизвестно |
purple-bitchs | Хищение токенов Discord | Неизвестно |
noblox.js-addons | Хищение токенов Discord | Имитация (noblox.js) |
kakakaakaaa11aa | Connectback-шелл | Неизвестно |
markedjs | Инъекции кода на Python | Имитация (marked) |
crypto-standarts | Инъекции кода на Python | Имитация (crypto-js) |
discord-selfbot-tools | Хищение токенов Discord | Имитация (discord.js) |
discord.js-aployscript-v11 | Хищение токенов Discord | Имитация (discord.js) |
discord.js-selfbot-aployscript | Хищение токенов Discord | Имитация (discord.js) |
discord.js-selfbot-aployed | Хищение токенов Discord | Имитация (discord.js) |
discord.js-discord-selfbot-v4 | Хищение токенов Discord | Имитация (discord.js) |
colors-beta | Хищение токенов Discord | Имитация (colors) |
vera.js | Хищение токенов Discord | Неизвестно |
discord-protection | Хищение токенов Discord | Неизвестно |