Mais de 400 pacotes do AUR do Arch Linux são sequestrados para implantar infostealer em Rust e rootkit eBPF

Mais de 400 pacotes do AUR do Arch Linux são sequestrados para implantar infostealer em Rust e rootkit eBPF

Atacantes adotaram pacotes órfãos no Arch User Repository, alteraram scripts de build e usaram dependências npm maliciosas para coletar segredos de desenvolvedores em estáções e pipelines de compilação

ComponentePacotes do Arch User Repository (AUR), scripts PKGBUILD e.install, pacotes npm atomic-lockfile@1.4.2 e js-digest, binário ELF deps em Rust
VetorAdoção de pacotes abandonados no AUR, edição dos scripts de build para executar npm install atomic-lockfile ou bun install js-digest durante a compilação local, com hook preinstall que dispara o payload deps
ImpactoColeta de sessões Electron, tokens GitHub/npm/HashiCorp Vault, material bearer OpenAI, exfiltração via HTTP para serviço de upload e C2 por proxy Tor; persistência em unidades systemd; com privilégios root, carregamento opcional de rootkit eBPF que oculta processos e bloqueia depuração
PrioridadeConfrontar pacotes AUR instalados ou atualizados a partir de 11 de junho de 2026 com listas comunitárias; caçar atomic-lockfile, js-digest e hash SHA-256 do payload; rotacionar credenciais expostas; reinstalar do zero se a compilação ocorreu como root
ArtefatosBinário deps (ELF Linux), serviço systemd com Restart=always, mapas BPF pinned hidden_pids, hidden_names e hidden_inodes, possível segundo estágio ligado a monero-wallet-gui
IoCsHash SHA-256 do payload principal: 6144d433f8a0316869877b5f834c801251bbb936e5f1577c5680878c7443c98b; pacotes npm atomic-lockfile@1.4.2 e js-digest; caminho src/hooks/deps; exemplos confirmados alvr e premake-git
MitigaçãoRevisar PKGBUILD e hooks.install antes de compilar; inspecionar /sys/fs/bpf/, unidades systemd e /var/lib/; remover pacote AUR não garante limpeza após execução do payload
Resumo técnico

Mais de quatrocentos pacotes do Arch User Repository (AUR) foram comprometidos em uma campanha de cadeia de suprimentos que alterou instruções de build para implantar um infostealer escrito em Rust em máquinas que compilaram os pacotes afetados. O AUR é o repositório comunitário do Arch Linux, separado dos repositórios oficiais, que não foram impactados segundo o relato disponível. A operação não explorou vulnerabilidade de software nem zero-day nos sistemas centrais da distribuição; o vetor foi a confiança herdada por nomes e histórico de pacotes cujos mantenedores originais haviam abandonado o projeto.

A campanha, referenciada como Atomic Arch em análise da Sonatype sob o identificador Sonatype-2026-003775 com pontuação CVSS 8.7, começou com dezenas de pacotes e escalou para centenas conforme rastreadores comunitários e a thread aur-general catalogaram alterações maliciosas. Os atacantes adotaram pacotes órfãos, reescreveram PKGBUILD ou scripts.install e inseriram dependências npm que executam um binário ELF chamado deps durante o processo de build. Uma segunda onda reutilizou bun install js-digest com contas distintas ligadas ao mesmo publicador npm, entregando outro binário malicioso com hash diferente.

O payload principal foi descrito por pesquisadores independentes como coletor de segredos voltado a estáções de desenvolvimento e ambientes de compilação. Além da exfiltração de credenciais, o malware estabelece persistência por meio de serviços systemd e, quando já dispõe de privilégios root e capacidades adequadas, pode carregar um rootkit eBPF opcional que oculta processos, nomes e inodes de sockets de ferramentas padrão. A lista de pacotes afetados permanece incompleta e em expansão; usuários que instalaram ou atualizaram pacotes do AUR em ou após 11 de junho de 2026 devem tratá-los como suspeitos até validação contra listas e scripts de detecção mantidos pela comunidade.

Fluxo técnico

O mecanismo de comprometimento explora o modelo de confiança do AUR: pacotes mantêm identidade visual e histórico de commits, mas podem ser reassumidos por terceiros quando o mantenedor original desaparece. Após a adoção, os invasores editaram receitas de build para incluir npm install atomic-lockfile ou, na onda subsequente, bun install js-digest. O pacote atomic-lockfile na versão 1.4.2 traz um hook preinstall que executa o binário deps empacotado; compilar o pacote AUR localmente é suficiente para disparar o código, sem necessidade de instalar o software legítimo pretendido pelo usuário.

Metadados de commit git foram falsificados para simular continuidade de um mantenedor de longa data, embora um Trusted User do Arch Linux tenha confirmado que a conta citada não foi comprometida. Exemplos reportados à lista de discussão do Arch incluem os pacotes alvr e premake-git. O binário deps, analisado por engenharia reversa, implementa coleta de arquivos sensíveis de aplicativos Electron como Slack, Discord e Microsoft Teams, além de tokens de GitHub, npm e HashiCorp Vault, material bearer de contas OpenAI e metadados associados.

Os dados roubados são enviados por HTTP a um serviço de hospedagem temporária de arquivos, enquanto o comando e controle utiliza um serviço onion acessado por proxy local em loopback sobre a rede Tor. Para persistência, o malware instala uma unidade systemd configurada com reinício automático: com root, copia-se para área sob /var/lib/ e registra unidade em /etc/systemd/system/; sem privilégios elevados, utiliza diretório home e unidade em ~/.config/systemd/user/.

O componente eBPF não eleva privilégios; só é carregado quando o processo já executa como root e possui capacidade compatível. Quando ativo, utiliza mapas BPF fixados com nomes hidden_pids, hidden_names e hidden_inodes para esconder processos, nomes de processo e inodes de sockets de utilitários convencionais, além de interromper tentativas de anexar depurador. Análises iniciais superestimaram esse módulo, mas sua presença altera drasticamente a resposta a incidentes porque a remoção do pacote AUR não prova limpeza do host. Foi também observado um segundo arquivo associado a monero-wallet-gui, sinalizado como possível minerador ainda não analisado em profundidade.

O pacote npm atomic-lockfile registrou cerca de cento e trinta e quatro downloads semanais na plataforma Socket antes de ser retirado do registro, indicando que a exposição real concentra-se no caminho de build do AUR e não em instalações npm diretas em larga escala. Mantenedores do Arch estão revertendo commits maliciosos, banindo contas envolvidas e solicitando relatos adicionais na thread aur-general. Não há CVE atribuído ao caso até o momento documentado.

Superficie afetada

A superfície primária são estáções de desenvolvimento e servidores de build Arch Linux que compilaram pacotes AUR comprometidos após 11 de junho de 2026. Repositórios oficiais do Arch permanecem fora do escopo direto da campanha, mas pipelines que reutilizam caches de build, espelhos git do AUR ou ambientes de CI que automatizam yay, paru ou makepkg herdaram o mesmo risco se processaram pacotes da lista afetada.

A confiança depositada em nomes estáveis de pacotes adotados recentemente ou reativados após longo período inativo constitui o elo explorado. Pacotes legítimos em paralelo não foram alterados no repositório oficial; o dano ocorre no momento em que o usuário ou automação executa a receita de build modificada.

  • Usuários e equipes que atualizaram ou instalaram pacotes AUR a partir de 11 de junho de 2026
  • Ambientes de compilação com Node.js/npm ou Bun presentes no fluxo PKGBUILD
  • Contas e segredos de GitHub, npm, HashiCorp Vault, OpenAI, Slack, Discord, Microsoft Teams e credenciais Docker ou Podman no host
  • Hosts onde o payload executou com root, com risco de rootkit eBPF e persistência em nível de sistema
  • Pacotes confirmados na discussão comunitária, incluindo alvr e premake-git, além de centenas de entradas ainda sendo consolidadas
Hunting e telemetria

A detecção deve combinar inventário de pacotes estrangeiros do AUR com busca por artefatos deixados pelo pipeline malicioso. Scripts comunitários comparam pacotes instalados contra conjuntos conhecidos de nomes afetados; equipes internas devem complementar com revisão de histórico de build, caches npm e Bun e inspeção de hooks em src/hooks/deps.

Telemetria de endpoint e rede precisa considerar exfiltração HTTP para serviços de upload temporário e tráfego Tor via proxy local. Persistência systemd exige varredura tanto de unidades de sistema quanto de usuário. Quando há indício de execução privilegiada, a presença de mapas BPF com nomes específicos em /sys/fs/bpf/ é indicador de alto valor para confirmar o módulo de ocultação.

  • Comparação de pacotes AUR instalados ou atualizados desde 11 de junho com listas mestras compiladas a partir do espelho git do AUR
  • Busca em histórico de build e caches por referências a atomic-lockfile, js-digest e caminho src/hooks/deps
  • Verificação de hash SHA-256 6144d433f8a0316869877b5f834c801251bbb936e5f1577c5680878c7443c98b em binários e artefatos residuais
  • Serviços systemd desconhecidos em /etc/systemd/system/ e em ~/.config/systemd/user/ com política de reinício contínuo
  • Arquivos inesperados sob /var/lib/ e mapas BPF pinned hidden_pids, hidden_names e hidden_inodes
  • Conexões de saída para upload HTTP temporário e tráfego associado a proxy Tor em loopback
  • Metadados git recentes em pacotes adotados que simulam autoria antiga sem correspondência com mantenedor legítimo
Mitigação

A resposta deve priorizar identificação de pacotes compilados no intervalo crítico, isolamento de hosts suspeitos e rotação ampla de credenciais que o infostealer foi projetado para extrair. Remover apenas o pacote AUR não restaura confiança quando o payload já executou, especialmente sob contexto root com possível rootkit eBPF.

Mantenedores do Arch estão revertendo commits e bloqueando contas maliciosas, mas organizações afetadas não devem depender exclusivamente dessa limpeza upstream. Reinstalação a partir de mídia confiável é o caminho recomendado quando a compilação ocorreu com privilégios elevados e há indícios de ocultação em kernel space via BPF.

Medidas preventivas incluem leitura obrigatória de PKGBUILD e scripts.install antes de qualquer build, desconfiança elevada para pacotes recém-adotados ou reativados após inatividade prolongada e monitoramento contínuo das duas ondas identificadas por atomic-lockfile e js-digest. A campanha ecoa tática semelhante observada em 2018 contra um visualizador PDF abandonado, agora ampliada em escala dentro de um padrão mais amplo de sequestro de projetos órfãos para herdar reputação em vez de typosquatting.

  • Confrontar imediatamente pacotes AUR instalados ou atualizados em ou após 11 de junho de 2026 com listas e scripts de detecção comunitários
  • Rotacionar sessões de navegador, chaves SSH, tokens GitHub e npm, credenciais Vault, sessões Slack, Teams e Discord, material bearer OpenAI e segredos Docker ou Podman
  • Caçar persistência systemd, artefatos em /var/lib/ e mapas BPF em /sys/fs/bpf/ antes de declarar erradicação
  • Tratar hosts com execução root como comprometidos em profundidade e reinstalar a partir de mídia confiável quando o rootkit eBPF for plausível
  • Revisar manualmente PKGBUILD e hooks.install de pacotes adotados recentemente; abortar build se instruções forem opacas ou introduzirem dependências npm ou Bun não justificadas
  • Monitorar continuamente a thread aur-general e listas consolidadas, pois o inventário de pacotes afetados ainda cresce

Postar um comentário

0 Comentários