Пакеты Laravel Lang были взломаны для распространения вредоносного ПО, похищающего учетные данные
Атака на цепочку поставок, нацеленная на пакеты локализации Laravel Lang, привела к тому, что разработчики столкнулись со сложной вредоносной кампанией по краже учетных данных. Злоумышленники использовали теги версий GitHub для распространения вредоносного кода через пакеты Composer.
В пятницу компании, занимающиеся кибербезопасностью, StepSecurity, Aikido Security и Socket, предупредили о взломе. По их данным, злоумышленники переписали теги GitHub в четырех репозиториях, поддерживаемых организацией Laravel Lang, вместо того чтобы публиковать совершенно новые вредоносные версии.
Среди затронутых пакетов — laravel-lang/lang, laravel-lang/http-statuses, laravel-lang/attributes и, возможно, laravel-lang/actions. Пакеты Laravel Lang — это сторонние пакеты для локализации, которые не являются частью официального проекта Laravel.
По данным Aikido, злоумышленники скомпрометировали 233 версии из трех репозиториев, а по данным Socket, пострадали около 700 устаревших версий.
Особенность этой атаки заключалась в том, что исходный код проекта не был изменен и не содержал вредоносного кода. Вместо этого злоумышленники воспользовались функцией GitHub, которая позволяет тегам указывать на коммиты в ответвлениях одного и того же репозитория.
«Вместо того чтобы опубликовать новую вредоносную версию, злоумышленник изменил все существующие теги git в каждом репозитории, чтобы они указывали на новую вредоносную версию», — пояснили в StepSecurity.
«Перезаписи начались в 22:32 по всемирному координированному времени в репозитории laravel-lang/lang (флагманский пакет переводов для Laravel с 502 тегами) и завершились в 00:00 по всемирному координированному времени в репозитории laravel-lang/actions. Все четыре репозитория имеют одного и того же вымышленного автора, одни и те же измененные файлы и одно и то же поведение при отправке данных, что почти наверняка указывает на то, что это дело рук одного злоумышленника, использовавшего скомпрометированные учетные данные с доступом к push-уведомлениям для всей организации».
Это позволило злоумышленникам опубликовать то, что выглядело как легитимные релизные теги проекта, но на самом деле привело к коммитам с вредоносным кодом, сохраненным в контролируемой злоумышленниками ветке репозитория.
Когда разработчики устанавливали пакет через Composer, он загружал вредоносный код, выдавая себя за легитимные релизы Laravel Lang.
Запускал программу для кражи учетных данных
Исследователи обнаружили, что вредоносные релизы содержали вредоносный файл src/helpers.php, который автоматически загружался Composer.
Внедренный код выполнял роль дроппера, который загружал вторую полезную нагрузку с командно-контрольного сервера злоумышленника на flipboxstudio[.]info.
Загруженная полезная нагрузка на PHP [VirusTotal] представляла собой крупный кроссплатформенный инструмент для кражи учетных данных для Linux, macOS и Windows, который собирает облачные учетные данные, секреты Kubernetes, токены Vault, учетные данные Git, секреты CI/CD, SSH-ключи, данные браузера, криптовалютные кошельки, менеджеры паролей, конфигурации VPN и локальные файлы конфигурации `.env`.
Вредоносная программа также содержит шаблоны регулярных выражений, которые используются для извлечения ключей AWS, токенов GitHub, токенов Slack, секретов Stripe, учетных данных для доступа к базам данных, JWT, закрытых ключей SSH и фраз для восстановления доступа к криптовалюте из файлов и переменных среды.
В системах Windows вредоносная программа на PHP также извлекает исполняемый файл [VirusTotal], закодированный в формате base64, который встроен в файл и записан в папку %TEMP% под случайным именем .exe, а затем запускается.
Анализ программы-вымогателя для Windows, проведенный BleepingComputer, показал, что она называется DebugElevator и предназначена для атак на Chrome, Brave и Edge с целью извлечения ключей шифрования, необходимых для расшифровки сохраненных учетных данных браузера.
Встроенный путь к файлу PDB также ссылается на имя учетной записи Windows «Mero» и содержит «claude», что может указывать на использование искусственного интеллекта при разработке вредоносного ПО для Windows.
C:\Users\Mero\OneDrive\Desktop\stuff\claude\Chromium-DebugElevator\x64\Release\DebugChromium.pdb
По словам исследователей, после извлечения конфиденциальных данных вредоносное ПО шифрует их и отправляет обратно на командный сервер.
В Aikido сообщили об инциденте в Packagist, где быстро отреагировали, удалив вредоносные версии и временно исключив затронутые пакеты из списка, чтобы предотвратить их дальнейшую установку.
Разработчикам, использующим пакеты Laravel Lang, рекомендуется проверять установленные версии пакетов, менять учетные данные, используемые для доступа к системе, проверять системы на наличие признаков компрометации и, по возможности, отслеживать историю исходящих подключений к flipboxstudio[.]info.
Редактор: AndreyEx


