A Ferramenta 'command-not-found' do Ubuntu Poderia Enganar Usuários a Instalar Pacotes Falsificados
15 de Fevereiro de 2024

Pesquisadores de cibersegurança descobriram que é possível para atores de ameaças explorar uma utilidade bem conhecida chamada command-not-found para recomendar seus próprios pacotes fora da lei e comprometer sistemas que executam o sistema operacional Ubuntu.

"Enquanto 'command-not-found' serve como uma ferramenta conveniente para sugerir instalações para comandos não instalados, pode ser inadvertidamente manipulado por atacantes através do repositório snap, levando a recomendações enganosas de pacotes maliciosos", disse a empresa de segurança na nuvem Aqua em um relatório compartilhado com The Hacker News.

Instalado por padrão nos sistemas Ubuntu, o command-not-found sugere pacotes para instalar em sessões interativas do bash ao tentar executar comandos que não estão disponíveis.

As sugestões incluem tanto a Ferramenta de Empacotamento Avançado (APT) quanto os pacotes snap.

Quando a ferramenta usa um banco de dados interno ("/var/lib/command-not-found/commands.db") para sugerir pacotes APT, ela se baseia no comando "advise-snap" para sugerir snaps que fornecem o comando dado.

Assim, caso um invasor consiga manipular este sistema e fazer com que seu pacote malicioso seja recomendado pelo pacote command-not-found, isso poderia abrir caminho para ataques à cadeia de suprimentos de software.

A Aqua disse que encontrou uma brecha de segurança em que o mecanismo de alias pode ser explorado pelo ator de ameaça para potencialmente registrar o nome snap correspondente a um alias e enganar os usuários a instalar o pacote malicioso.

Além disso, um invasor poderia reivindicar o nome snap relacionado a um pacote APT e carregar um snap malicioso, que acaba sendo sugerido quando um usuário digita o comando em seu terminal.

"Os mantenedores do pacote APT 'jupyter-notebook' não reivindicaram o nome snap correspondente", disse o pesquisador de segurança da Aqua, Ilay Goldman.

"Este descuido deixou uma janela de oportunidade para um invasor reivindicá-lo e carregar um snap malicioso chamado 'jupyter-notebook'."

Para piorar a situação, a utilidade command-not-found sugere o pacote snap acima do pacote APT legítimo para jupyter-notebook, enganando os usuários a instalar o falso pacote snap.

Até 26% dos comandos do pacote APT são vulneráveis à usurpação por atores maliciosos, observou a Aqua, apresentando um risco de segurança substancial, já que poderiam ser registrados sob a conta de um invasor.

Uma terceira categoria envolve ataques de typosquatting, nos quais erros tipográficos feitos pelos usuários (por exemplo, ifconfigg em vez de ifconfig) são aproveitados para sugerir pacotes snap falsos ao registrar um pacote fraudulento com o nome "ifconfigg."

Nesse caso, o command-not-found "combinaria erroneamente com este comando incorreto e recomendaria o snap malicioso, ignorando completamente a sugestão para 'net-tools'", explicaram os pesquisadores da Aqua.

Descrevendo o abuso da utilidade command-not-found para recomendar pacotes falsificados como uma preocupação urgente, a empresa está instigando os usuários a verificar a fonte de um pacote antes da instalação e a verificar a credibilidade dos mantenedores.

Desenvolvedores de pacotes APT e snap também foram aconselhados a registrar o nome snap associado aos seus comandos para evitar que sejam mal utilizados.

"Permanece incerto quão extensivamente essas capacidades foram exploradas, ressaltando a urgência por vigilância intensificada e estratégias de defesa proativas", disse a Aqua.

Publicidade

Curso gratuito de Python

O curso Python Básico da Solyd oferece uma rápida aproximação à linguagem Python com diversos projetos práticos. Indo do zero absoluto até a construção de suas primeiras ferramentas. Tenha também suporte e certificado gratuitos. Saiba mais...