Os cientistas detectaram um código malicioso para Linux que opera de forma furtiva e pode roubar informações a partir de qualquer processo que esteja sendo executado em uma máquina. Esta backdooring pode ser usada para comprometer qualquer computador.
Os especialistas da Intezer descobriram o vírus Orbit, que é diferente dos demais malwares para o Linux. Ele obtém informações de diferentes comandos e ferramentas, armazenando-as em arquivos específicos no computador. O nome Orbit vem do nome de um dos arquivos temporários usados para salvar os dados das operações executadas, informou a empresa de segurança.
Nicole Fishbein, da Intezer, expôs numa postagem de blog no site da Orbit na semana passada que o Orbit pode ser mantido persistente em uma máquina ou instalado como um implante volátil.

O malware se destaca das outras ameaças devido à “quase conexão hermética” de bibliotecas nas máquinas alvo, o que facilita a sua persistência e a ocultação ao capturar dados e implantar uma porta de SSH, explicou.
O malware usa métodos sofisticados de evasão e se mantém na máquina usando conexões de funções-chave, dando aos cibercriminosos a capacidade de se conectar remotamente por SSH, obtendo credenciais e gravando registros de comandos TTY, como observou Fishbein no post.
Adicionalmente, uma vez que a OrbiT é instalada, ela contamina todos os procedimentos ativos no computador, inclusive os que são recentemente iniciados, ela relatou.
Considerando-se um dos maiores empreendimentos dos seres humanos, a proteção do meio ambiente é um assunto que vem se tornando cada vez mais importante.
Geralmente, as ameaças do Linux, como Symbiote e HiddenWasp, adotavam o método de modificar a variável de ambiente LD_PRELOAD para carregar bibliotecas modificadas. No entanto, Orbit adota duas abordagens diferentes, de acordo com Fishbein.
O autor do post descreveu duas maneiras de incorporar um objeto compartilhado malicioso. A primeira é anexando-o no arquivo de configuração usado pelo carregador, enquanto a segunda é ajustando o binário do programa para que carregue o objeto compartilhado.
Especificamente, Orbit faz uso de cadeias de caracteres criptografadas XOR e roubos de senhas, táticas que são análogas às outras portas traseiras Linux já descritas por investigadores da ESET, descreveu Fishbein.
No entanto, a semelhança com os sequestradores de backdoors se encerra aqui, de acordo com ela. Orbit avança ainda mais, não só se aproveitando de vários comandos e utilitários, mas também usando arquivos extensivamente para armazenar os dados capturados. Segundo Fishbein, algo que os pesquisadores nunca haviam visto antes.
Configuração e implementação
Orbit transporta em um computador ou aparato Linux por meio de um dropper que não só instala a carga útil, mas também prepara o cenário para a realização de software malicioso.
Ao instalar a carga maliciosa e adicioná-la às bibliotecas compartilhadas carregadas pelo linker dinâmico, o conta-gotas invoca uma função chamada patch_ld e, posteriormente, o link simbólico do linker dinâmico /lib64/ld-linux-x86-64.so.2. A fim de verificar se a carga maliciosa já foi carregada, este último busca o caminho usado pelo malware, de acordo com os pesquisadores.
Se a carga útil for encontrada, a função poderá substituí-la com o outro local, notaram-no. Se não, o dropper irá procurar por /etc/ld.so.preload e substituí-lo com um link simbólico para a localização da biblioteca maliciosa: /lib/libntpVnQE6mk/.l ou /dev/shm/ldx/.l, dependendo do argumento enviado ao dropper.
Por fim, os pesquisadores indicaram que o dropper anexará /etc/ld.so.preload ao final do documento temporário para garantir que a biblioteca maliciosa seja carregada de antemão.
O objeto compartilhado (arquivo .so) que é a carga útil pode ser armazenado de modo persistente ou em memória shim. Fishbein destacou que, se a carga útil for armazenada no primeiro caminho, ela se tornará persistente; do contrário, será volátil.
Conectando três bibliotecas, libc, libcap e Módulo de Autenticação Pluggable (PAM), os processos existentes que usam essas funções serão acessados por meio da biblioteca modificada. Além disso, todos os novos processos serão vinculados à biblioteca maliciosa, descoberta pelos pesquisadores.
Esta ligação possibilita a infecção de todo o computador pela ameaça maliciosa, possibilitando a obtenção de credenciais, evitando a detecção, adquirindo persistência e proporcionando acesso remoto aos atacantes, conforme apontado por Fishbein.
Estratégias de Elusão
O Orbit faz a ligação de várias funções para evitar ser descoberto, e para isso impede que qualquer informação que possa expor a existência da biblioteca maliciosa seja liberada, de acordo com o que foi verificado por pesquisadores em relação aos processos em execução e arquivos usados pela Orbit.
O malware em questão usa um valor GID hardcoded, fornecido pelo dropper, para identificar quaisquer arquivos e processos que se relacionem com ele; a partir disso, ele modifica o comportamento das funções que foram interceptadas, de acordo com o que Fishbein escreveu. No Linux, o GID é um número associado a um grupo específico.
Como exemplo de essa capacidade, Orbit Hooks readdir – uma função Linux que retorna um ponteiro para uma estrutura complicada listando a próxima entrada de diretório no fluxo de diretório conectado a dirp – verifica o GID do processo que fez a chamada, descreveu ela.
Fishbein afirmou que se o valor codificado não for igual, todas as pastas com um GID já determinado serão excluídas da saída da função.
Registre-se agora para este evento on-demand: junte-se à Threatpost e a Tom Garrison da Intel Security em uma discussão da Threatpost, explorando inovação, deixando as partes interessadas prontas para lidar com o cenário de ameaças em mudança. Além disso, descubra o que a Intel Security descobriu com seu mais recente estudo em conjunto com o Ponemon Institute. Faça isso.
Ao compartilhar este artigo, ajude a divulgá-lo.
- Malware é um tipo de programa malicioso que pode ser usado para invadir informações confidenciais.