FLAMING RÉPLICA: notícias rootkit Linux “proporciona algum alívio cômico”

Cerca de duas semanas atrás, uma postagem sobre a lista completa de Divulgação Divulgação anunciou um novo rootkit Linux.

Na verdade, a postagem não apenas anunciar o malware, mas incluiu uma amostra totalmente funcional.

Para aqueles não familiarizados com as rodovias on-line e atalhos da segurança da informação, Full Disclosure é algo de uma instituição.

Como a própria lista aponta, a "atmosfera relaxante […] proporciona algum alívio cômico e fofocas determinada indústria", mas com a ressalva de que "a maioria dos posts são bobagens sem valor, de modo a encontrar as jóias preciso paciência."

Embora eu normalmente não tolera a divulgação, aberta ao público de código malicioso, mal pouco foi feito neste caso. O rootkit não se espalha ou instalar-se, e está ligada a uma versão específica do Linux.

(Se você está interessado nos detalhes deste malware, você pode ler uma análise passo-a-passo publicado por uma empresa dos EUA moderadamente misteriosa chamada Crowdstrike.)

Mas o que é um rootkit? Isto é algo novo para o Linux?

Nem um pouco.

Julian Assange, por exemplo, agora mais conhecido por ser escondido na embaixada do Equador, em Londres, trabalhou em uma transparente e deniable sistema de criptografia de disco no final da década de 1990. Este sistema funcionou no Linux, entre outros, e fez uso de técnicas de rootkit.

Na verdade, o termo rootkit originalmente veio do mundo UNIX. Ele descreveu o conjunto de ferramentas de software que um hacker pode usar para invadir um sistema, obter acesso administrativo (conhecida como a obtenção de raiz, após a conta de superusuário, chamado de raiz), e em seguida, esconder a sua presença.

Estes dias, no entanto, os rootkits são mais comumente associados com o Windows. O "recurso" chave de qualquer rootkit moderna não é que ele adquire acesso administrativo – o que não é necessário para o malware, que é certamente muito útil – mas que fornece uma camada de stealth. Uma cortina de fumaça, se quiser, contra detecção.

Este novo rootkit, detectados por produtos Sophos como Troj / SrvInjRk-A, utiliza uma grande variedade de técnicas de esconder, e nos lembra que o mesmo tipo de trapaça malware que pode ser forjado contra Windows pode ser feito contra o Linux, também.

Windows e Linux (e Mac OS X, para que o assunto) são, a partir de uma perspectiva de alto nível arquitetônico, muito mais semelhantes do que diferentes.

Genericamente falando, o sistema operacional é dividido em dois.

Há uma parte em nível usuário, onde os programas são executados como o seu servidor web, o editor de fotografia, e bloco de notas. E há uma parte do kernel, que você pode pensar como um "administrador de administrador" o, para gerenciar tudo o resto – memória, uso da CPU, o acesso a discos e outros dispositivos de hardware, bem como os programas que começar a correr, e que eles estão autorizados a fazer.

Então malware que pode carregar dentro do kernel – como este rootkit faz – tem uma série de vantagens. Em primeiro lugar, ele está correndo em pé de igualdade com o outro código do kernel que gerencia a segurança do mais alto nível, userland menos privilegiada. Em segundo lugar, fica a ver, e, pelo projeto, para ajustar e modificar, tudo o que vem de userland ou é devolvido a ele.

Por exemplo, depois Troj / SrvInjRk-A é carregado, ele corrige um certo número de funções do sistema de núcleo. Você pode ver os patches aqui:

O vfs_read funções e lidar vfs_readdir com acesso a arquivos e diretórios (vfs significa sistema de arquivos virtual). Casualmente modificar as funções do kernel como este é terrivelmente arriscado, é claro, mas para um autor de malware, é bom o suficiente.

E ligando tcp_sendmsg, o malware é capaz de inspecionar os pacotes de rede depois de terem sido transmitidos pelo seu servidor web, e modificá-los "em vôo" para incluir conteúdo malicioso. Isto significa que o conteúdo malicioso nunca sequer existe no userland – nem no disco nem na memória.

Curiosamente, o malware contém uma lista de 854 números IP e intervalos a que se recusa a enviar conteúdo modificado. A lista é uma mistura eclética, incluindo como faz ambos os servidores do Google e do que olhar como telefones celulares, mas nos lembra como é fácil para os cibercriminosos para apresentar uma aparência de duas caras para o mundo.

Se os motores de busca não manchar seu malware enquanto eles estão spidering, e se os administradores de sistema ou web designers não ver o conteúdo alterado, mesmo quando eles estão olhando para as mudanças, o malware irá provavelmente sobreviver despercebida por mais tempo.

Poderia ser infectados com este malware e não sabe sobre isso?

A boa notícia é que isso é improvável.

Você precisa de estar executando o kernel Linux 2.6.32 rotulado-5-amd64 – que praticamente significa que a versão de 64 bits do Debian Squeeze 6.0.0. E você terá um módulo do kernel inesperado chamado / lib/modules/2.6.32-5-amd64/kernel/sound/module_init.ko.

Nós não sabemos onde isso veio. Crowdstrike sugere que, "[b] om base nas ferramentas, técnicas e procedimentos empregados e algumas informações de fundo que não pode divulgar publicamente, um atacante Rússia-base é provável", mas esse tipo de sugestão infundadas realmente não ajuda.

Em suma, nós provavelmente nunca saberemos quem escreveu essa coisa. Mas é uma prova de existência mais para aqueles que negam a possibilidade de malware Linux.