В популярный проект Deep-Live-Cam внедрили зависимость, ворующую адреса криптокошельков

В популярный проект Deep-Live-Cam внедрили зависимость, ворующую адреса криптокошельков

8 сентября 2026 года в исходный код Deep-Live-Cam, популярного приложения для подмены лиц на базе Python, попало вредоносное изменение. В список используемых библиотек добавили сторонний компонент, который после установки запускал скрытую цепочку загрузок. В итоге на компьютерах жертв оказывался инструмент, подменяющий адреса криптокошельков при копировании. Проект насчитывает 96 600 отметок на GitHub, поэтому инцидент затронул огромную аудиторию разработчиков и обычных пользователей, которые собирали приложение из исходников.

Описание

Схема атаки началась с правки файла, где перечислены зависимости проекта. Злоумышленник изменил 18 записей, направив установку на посторонние репозитории. Среди них находился и вредоносный пакет, замаскированный под известную библиотеку. Массовое редактирование записей делало посторонний адрес менее заметным для ревьюеров. Вскоре выяснилось, что учётная запись сопровождающего проект была скомпрометирована, несмотря на включённую двухфакторную аутентификацию. Вредоносная зависимость оставалась в основной ветке репозитория около девяти с половиной часов, после чего автор проекта её удалил и сменил учётные данные.

По данным SafeDep, аналитики сопоставили изменения в репозитории с сохранёнными образцами вредоносного кода и подтвердили его активность. Они также проследили цепочку исполнения: при установке проекта запускался скрытый код, встроенный в установочный скрипт пакета. Чтобы спрятать его, автор использовал необычный приём: после первой строки кода было добавлено 434 пробела, что выталкивало тело вредоноса за границы видимой области в большинстве редакторов. Вдобавок переменные назывались с использованием символов японской и китайской азбуки, что ещё сильнее затрудняло чтение кода человеком.

Главная опасность заключалась в том, что вредоносный код исполнялся ещё до завершения установки основного приложения. Даже если установка прерывалась ошибкой, скрытая программа уже успевала запуститься и продолжить загрузку следующих стадий. Сначала на компьютер сохранялся загрузчик, который выбирал версию под операционную систему Windows или macOS. Затем он обращался к публичной веб-странице, извлекал из её текста очередной фрагмент кода и записывал его в локальный файл. После этого запускался финальный модуль, который и отвечал за кражу адресов криптокошельков.

Финальный вредонос непрерывно следил за буфером обмена. Как только пользователь копировал текст, программа сканировала его на наличие последовательностей символов, похожих на адреса криптовалютных кошельков. Для проверки применялись алгоритмы, поддерживающие несколько типов адресов: биткоин, эфириум, tron, solana и другие. Если последовательность распознавалась как адрес, вредонос незаметно заменял её на заранее заданный адрес злоумышленника. При этом замена происходила внутри скопированного фрагмента, поэтому получатель перевода даже не замечал подмены до отправки средств. Реализованная проверка не позволяла отличить поддельные адреса от настоящих, но полностью отвечала задаче хищения.

После первого запуска вредонос регистрировался в автозагрузке. На Windows он создавал запись в системном реестре, а на macOS - файл автозапуска в каталоге пользователя. Благодаря этому перехват буфера обмена продолжался после перезагрузки компьютера. Описанные механизмы затрагивают только Windows и macOS. Наличие похожих функций для Linux в коде не подтверждает реального заражения, поскольку загрузчик на Linux завершал свою работу.

Руководство проекта устранило вредоносную зависимость в течение нескольких часов после обнаружения. Однако сам факт отката не удалял уже загруженные файлы и записи автозапуска с заражённых машин. Все, кто устанавливал Deep-Live-Cam в период с вечера 8 сентября до ночи 9 сентября, могли получить вредонос. Поэтому пользователям, затронутым инцидентом, рекомендуется проверить компьютер на наличие посторонних процессов и элементов автозапуска. Также стоит перевыпустить все пароли и ключи доступа, если они могли храниться на взломанной учётной записи сопровождающего.

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

Индикаторы компрометации

URL

  • https://abacus.jasoncameron.dev/hit/duff.com/info
  • https://github.com/pypls/requests
  • https://graph.org/coding-utf-8-09-05-2

SHA1

  • 43f402baa9d00d986d2be3e3cd6d1a3e69ec1f8f
  • 55d306d5ae07a4e6494013422ab244306a5c0879
  • 7895c547a6788ee53e5c7c34e93454f86f6d2b53

SHA256

  • 175f9e7fad2661f647c8f2438bf0d757fe18ab364a22c544c938f45e0e4f6ced
  • 73cb3c0e9afd9db32a392655ff58be5cc95b24fbc0f412202853dc0161dd0561
  • b34818f9208133c2fd2d0814162c6f3c59e35df518e3c95f998890f7e4a5e6f4
  • c91a00b56ad2591236ccefd701a6b19b72dbacefadbdb0f11e13693c2d6764d9
  • eafed30038d53614cf3dc7a8f19c2dd663352b3c8cb78aa5ed1b9d9710017570
  • f6fbefc82589dbeddabc8883c63cbb027239019ed38fafa83a9139c2585064f5

Комментарии: 0