Логотип

Как безопасно использовать AUR: уроки атаки вредоносного ПО на AUR в июне 2026 года

Как безопасно использовать AUR: уроки атаки вредоносного ПО на AUR в июне 2026 года

В июне 2026 года злоумышленники взломали более 1500 пакетов в репозитории пользователей Arch (AUR).

 Исследователи Sonatype назвали эту кампанию Atomic Arch. Это одна из крупнейших атак на AUR на сегодняшний день.

AUR — это поддерживаемая сообществом коллекция скриптов сборки пакетов. Она отделена от официальных репозиториев Arch Linux. Официальные репозитории не были затронуты.

Атака не использовала уязвимость в Arch Linux или pacman. Она злоупотребила процессом принятия пакетов в AUR, чтобы захватить «осиротевшие» пакеты, которым пользователи уже доверяли.

В этой статье объясняется, что произошло, почему это сработало и что вы можете сделать, чтобы снизить риск в будущем.

Злоумышленники использовали «осиротевшие» пакеты и модифицировали их PKGBUILDфайлы. A PKGBUILD— это скрипт Bash, который указывает makepkg, как загружать, собирать и упаковывать программное обеспечение. Поскольку это скрипт, он может выполнять произвольные команды во время сборки.

Многие из измененных PKGBUILDфайлов загружали вредоносный npm-пакет с именем `.npm package` atomic-lockfile. npm package — это программное обеспечение, распространяемое через реестр Node Package Manager (npm). npm package размещал в системе исполняемый файл Linux ELF . Исполняемый файл ELF — это стандартный двоичный формат, используемый Linux.

Вредоносная программа похищала файлы cookie браузера, токены сессий, учетные данные для входа, ключи SSH, учетные данные Docker, профили VPN и секреты облачных сервисов. После получения прав root она также могла развернуть дополнительный руткит eBPF . Руткит eBPF использует расширенную структуру Berkeley Packet Filter (eBPF) Linux для сокрытия вредоносной активности от операционной системы.

Кампания началась примерно с 400 скомпрометированных пакетов и в последующие дни разрослась до более чем 1500. Разработчики Arch приостановили регистрацию новых учетных записей AUR, пока расследовали инцидент и удаляли вредоносные пакеты.

Официальные репозитории Arch (core, extra, multilib) не пострадали . Атака была направлена ​​на модель доверия AUR, а не на инфраструктуру упаковки или подписи пакетов Arch Linux.

 

Почему это произошло

Атака не удалась, потому что Arch Linux был небезопасен. Она удалась, потому что AUR построен на доверии.

AUR — это поддерживаемая сообществом коллекция скриптов сборки пакетов. Любой желающий может отправлять новые пакеты, а пакеты-сироты могут быть приняты новыми сопровождающими. В отличие от официальных репозиториев, пакеты AUR не проходят формальную проверку перед тем, как стать доступными.

Это не делает AUR небезопасным. Это означает, что ответственность за определение того, является ли пакет надежным, лежит на пользователе. AUR предназначен для упрощения процесса создания пакетов в сообществе, а не для подтверждения надежности каждого пакета.

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

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

 

Как безопаснее использовать AUR

Вам не нужно прекращать использовать AUR. Вам нужно более осознанно подходить к тому, когда и как вы его используете.

1. Отдавайте предпочтение официальным репозиториям.

Перед использованием AUR проверьте наличие пакетов в официальных репозиториях. Официальные пакеты проходят процесс упаковки Arch и поддерживаются командой Arch Linux. Используйте AUR только в том случае, если программное обеспечение недоступно в официальных репозиториях.

Некоторые разработчики программного обеспечения также предоставляют официальные репозитории Arch или официальные пакеты. В этом случае отдавайте предпочтение им, а не пакетам AUR, поддерживаемым сообществом. Обновления поступают непосредственно от издателя, а не от сопровождающего AUR.

2. PKGBUILDПеред началом строительства ознакомьтесь с информацией.

PKGBUILD— это скрипт Bash. Проверьте его перед сборкой пакета. Если вы уже доверяете пакету, обратите внимание на изменения, произошедшие с момента последнего обновления.

Обратите особое внимание, если у пакета появился новый сопровождающий или он был недавно принят в проект. Ищите неожиданные загрузки, команды, не связанные со сборкой программного обеспечения, или изменения, не соответствующие исходному проекту.

Сопутствующий .installфайл также может выполнять команды во время установки пакета. Просмотрите его, если пакет его содержит.

Ознакомьтесь с комментариями к пакету. Другие пользователи часто сообщают о неработающих сборках, изменениях, внесенных сопровождающими, или подозрительном поведении.

3. Сборка пакетов в чистой среде chroot.

Чистая среда chroot — это изолированная среда сборки, содержащая только необходимые для сборки пакеты. Она снижает риск доступа скрипта сборки к файлам из вашей рабочей среды и помогает создавать чистые, воспроизводимые сборки. Пакет devtoolsпредоставляет инструменты для создания и использования чистых сред chroot.

Более подробную информацию вы найдете по ссылке ниже:

4. Рассмотрите Flatpak для настольных приложений.

Flatpak распространяет предварительно собранные настольные приложения, работающие в изолированной среде (песочнице). Песочница ограничивает доступ приложения к определенным ресурсам, если вы не предоставите ему дополнительные разрешения. Это снижает последствия взлома приложения, но не гарантирует его надежность.

Вы можете установить Flatpak и включить репозиторий Flathub, используя следующие команды:

sudo pacman -S flatpak 
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

5. Используйте контейнеры, когда вам требуется программное обеспечение из другого дистрибутива.

Если вам нужно программное обеспечение, которое проще установить на другой дистрибутив Linux, рассмотрите возможность запуска его внутри контейнера Distrobox вместо использования неофициального пакета AUR. Distrobox изолирует это программное обеспечение от вашей основной системы, интегрируя его с вашим рабочим столом.

Для установки Distrobox и создания контейнеров (например, Void Linux) выполните следующие действия:

sudo pacman -S distrobox 
distrobox create --name void-box --image voidlinux/voidlinux 
distrobox enter void-box

6. Проверка установленных пакетов AUR.

Следующая команда выводит список сторонних пакетов, то есть пакетов, которые не устанавливаются из официальных репозиториев:

pacman -Qm

 

Регулярно просматривайте список. Обращайте особое внимание на пакеты, у которых недавно сменился сопровождающий или которые были переданы после того, как стали «осиротевшими».

7. Сохраняйте снимки системы.

Снимок файловой системы фиксирует текущее состояние вашей системы. Такие инструменты, как Snapper или Timeshift, позволяют откатиться к предыдущей версии после неудачного обновления, установки пакета или изменения конфигурации. Снимок не может защитить учетные данные, которые уже были украдены, но он может значительно ускорить восстановление системы.

Прежде чем устанавливать или обновлять пакеты из AUR, задайте себе три вопроса:

  • Доступно ли программное обеспечение в официальных репозиториях или у издателя?
  • Имеют ли смысл недавние изменения PKGBUILD?
  • Можно ли доверять нынешнему разработчику?

Если вы не можете с уверенностью ответить на все три вопроса, остановитесь и проведите исследование, прежде чем продолжить.

 

Краткое содержание

Кампания по распространению вредоносного ПО в AUR в июне 2026 года не является причиной для отказа от использования Arch Linux или AUR. Это напоминание о том, что доверие нужно заслужить и пересматривать со временем.

Атака не использовала уязвимость в Arch Linux. Она использовала доверие, которое пользователи оказывали пакетам, в которых сменились разработчики. Та же идея встречается во многих атаках на цепочки поставок программного обеспечения. Злоумышленники часто нацеливаются на доверенное программное обеспечение, а не на технические уязвимости.

AUR предоставляет сообществу простой способ упаковывать и распространять программное обеспечение, недоступное в официальных репозиториях. Такая открытость также означает, что пользователи должны сами решать, каким пакетам доверять.

Все рекомендации в этой статье основаны на одном принципе: уменьшите уровень доверия к программному обеспечению и снизьте негативные последствия, если это доверие окажется неоправданным.

Относитесь ко всему PKGBUILDкак к исполняемому коду, потому что это именно то, чем он является. Проверяйте изменения перед сборкой. Обращайте внимание на изменения, вносимые сопровождающими проекта. Используйте AUR, когда это приносит пользу, а не просто потому, что это удобно.

Безопасность — это не избегание всех рисков. Это понимание того, где существует доверие, и определение того, было ли оно заслужено.

Если вы новичок в Arch, соберите базовую систему из официальных репозиториев, используйте Flatpak для дополнительных компонентов, используйте контейнеры для междистрибутивных задач и относитесь к AUR как к источнику информации, которую нужно изучить, прежде чем доверять ей.

 

Ресурсы и дополнительная литература:

Редактор: AndreyEx

Рейтинг: 5 (1 голос)
Если статья понравилась, то поделитесь ей в социальных сетях:

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

19 − четырнадцать =

Это может быть вам интересно


Спасибо!

Теперь редакторы в курсе.

Прокрутить страницу до начала