Vulnerabilidades descobertas no Systemd

System

Como vocês provavelmente já ouviram falar, foram descobertas recentemente três novas vulnerabilidades no Systemd, que é um sistema de inicialização e gerenciador de serviços, utilizado em distribuições GNU/Linux populares como Red Hat e Debian, bem como em algumas destas derivadas.

Pesquisadores ligados à Qualys Inc. descobriram e reportaram as vulnerabilidades, que receberam as designações CVE-2018-16864, CVE-2018-16865, e CVE-2018-16866.

As informações publicadas no site The Hacker News, apontam que distribuições como SUSE Linux Enterprise 15, openSUSE Leap 15.0, e Fedora 28 and 29 não foram afetadas, visto que o código do espaço do usuário é compilado utilizando a opção fstack-clash-protection do GCC, protegendo este espaço contra ataques Stack Clash, que em uma tradução livre seriam ataques de “Colisão de Pilha”.

A vulnerabilidade Stack Clash é relatada pela própria Qualys como sendo uma falha que afeta não só a sistemas GNU/Linux, mas também OpenBSD, NetBSD, FreeBSD e Solaris, tanto em ambientes i386 quanto amd64.

“Cada programa executado em um computador usa uma região de memória especial chamada pilha. Essa região de memória é especial porque cresce automaticamente quando o programa precisa de mais memória de pilha. Mas se crescer muito e ficar muito perto de outra região de memória, o programa pode confundir a pilha com a outra região de memória. Um invasor pode explorar essa confusão para sobrescrever a pilha com a outra região de memória ou vice-versa”, informa o blog da Qualys.

Duas das falhas descobertas recentemente revelam problemas de corrupção de memória, enquanto a terceira expõe um problema de leitura fora do limite no systemd-journald, que pode permitir o vazamento de dados sensíveis da memória do processo em execução.

Os pesquisadores criaram com sucesso provas de conceito que verificam as vulnerabilidades, e planejam liberá-las em um futuro próximo, provavelmente após as falhas terem sido corrigidas e estas correções liberadas ao público.

“Nós desenvolvemos um exploit para a CVE-2018-16865 e a CVE-2018-16866 que obtém um shell local com  privilégios de administrador em 10 minutos em ambientes i386, e em 70 minutos em ambientes amd64, em média”, informaram os pesquisadores.

O CVE-2018-16864 é semelhante a uma vulnerabilidade Stack Clash que os pesquisadores da Qualys descobriram ainda em 2017, e que pode ser explorada por malware, ou por usuários com poucos privilégios, escalando suas permissões para o nível de administrador.

O Systemd não faz parte da distribuição Slackware Linux, que atualmente é disponibilizada em versão estável de número 14.2, mas que utiliza um sistema de inicialização compatível com o System V desde sua versão 7.0.

A recomendação aos usuários e administradores de sistemas, sendo estes afetados ou não pelas vulnerabilidades descobertas, é a de sempre acompanhar a disponibilização de atualizações de segurança, liberadas pela equipe de desenvolvimento do sistema operacional utilizado, ou administrado, e aplicar estas correções tão logo estejam disponíveis.

A realização de backups de segurança dos dados pessoais constantes nestes sistemas deve ser uma rotina, e evita que atualizações problemáticas, ou mesmo causas diversas, gerem a perda de dados.

Como complemento oferecido por um dos profissionais que acompanham o blog, Deiverson Silveira, segue o link para o comunicado oficial a respeito das vulnerabilidades, e publicado pelos pesquisadores da Qualys.

Anúncios

Network Security Toolkit 20 – 6535 lançada! Fevereiro, 2015

Network-Security-Toolkit

Já está disponível para download, a nova versão da distribuição Network Security Toolkit. A NST é uma distribuição em Live DVD, baseada na Fedora Linux, e proporciona um ambiente operacional com várias ferramentas livres para segurança em redes de computadores.

Segundo o anúncio oficial do lançamento, esta é uma atualização intermediária entre versões, e disponibiliza todos os pacotes atualizados da NST, e da versão 20 da distribuição Fedora, nesta nova ISO. Esta versão trás o kernel Linux 3.18.5.

Vale lembrar que, se você tem uma assinatura para o repositório yum NST PRO, você não precisa baixar esta imagem, basta usar o comando yum update em seu sistema instalado atualmente e ele será atualizado para esta versão.

Para maiores detalhes referentes a este lançamento, basta clicar no link para o anúncio oficial, disponibilizado acima, e que levará à página do projeto, disponível no SourceForge.

Potencial ofensivo do “Hand of Thief” para os sistemas GNU/Linux.

mac_malware

Muito se tem falado a respeito da descoberta recente da RSA, sobre um malware que tem como alvo específico a coleta de dados bancários em sistemas GNU/Linux, sendo possível encontrar notícias espalhadas em sites e blogs americanos, assim como em outros aqui mesmo no Brasil, podendo citar entre eles o techtudo, da Globo.com, e o Info Exame, da Abril. Mas até que ponto este trojan pode mesmo ser uma ameaça a segurança nos sistemas operacionais de código aberto?

Em primeiro lugar, vamos buscar a definição do que é um trojan. Segundo a Cartilha de Segurança para Internet, disponibilizada pelo Cert.br – Centro de Estudos, Resposta e Tratamento de Incidentes de Segurança no Brasil, um trojan, ou trojan-horse, ou ainda cavalo de troia em uma tradução livre, é:

…um programa que, além de executar as funções para as quais foi aparentemente projetado, também executa outras funções, normalmente maliciosas, e sem o conhecimento do usuário. Estes programas, geralmente, consistem de um único arquivo e necessitam ser explicitamente executados para que sejam instalados no computador. Trojans também podem ser instalados por atacantes que, após invadirem um computador, alteram programas já existentes para que, além de continuarem a desempenhar as funções originais, também executem ações maliciosas“.

Mas segundo a descrição das características do “Hand of Thief”, feita pela própria RSA, este malware apresenta ainda funcionalidades pertencentes a outras classes de softwares maliciosos, como a capacidade de abrir portas de comunicação no sistema infectado para a utilização do atacante, bem como a de socks5 proxy, que é um web proxy com a capacidade de permitir o acesso de um computador externo a Internet utilizando o computador infectado.

Essa funcionalidade é explorada quando o atacante deseja mascarar seu próprio endereço IP durante o acesso a Internet, fazendo com que os sites ou computadores que visite mostre o IP do computador infectado, através do qual ele está acessando a Internet, e não o seu IP real. Além disso, ela também está sendo utilizada no malware para prevenir que o sistema contaminado acesse e utilize os serviços de determinados sites, como os que atualizam as bases de dados dos antivírus instalados e os próprios sistemas operacionais GNU/Linux.

Outras tarefas realizadas pelo trojan são: a captura de dados digitados em formulários em websites, bem como a coleta de cookies nos navegadores web, podendo afetar vários deles como o Mozilla Firefox, Google Chrome, Chromium, Aurora, Ice Weasel, entre outros. O malware também vem “equipado” com ferramentas contra a instalação do mesmo em máquinas virtuais e sandboxes, além de outras que previnem a depuração e análise de seu código, dificultando a pesquisa e a realização de engenharia reversa no mesmo.

Ainda segundo a RSA, esse malware parece ter sido desenvolvido por um time de criminosos cibernéticos de origem russa, que alega ter testado o mesmo em quinze distribuições diferentes, incluindo as populares Ubuntu, Debian e Fedora, abrangendo oito ambientes gráficos, encontrando-se o KDE e o GNOME entre eles.

Como método de infecção, o próprio “serviço de atendimento” da equipe que está vendendo o trojan sugere a engenharia social ou o envio por e-mail, não diferindo dos outros tipos de malware que existem para as várias distribuições GNU/Linux. O valor que o(a) interessado(a) em adquirir este software malicioso terá de desembolsar, é de dois mil dólares americanos, ou mil e quinhentos euros, pelo menos é quanto custa no momento em que escrevo este post.

Após verificarmos a descrição oferecida pela RSA em seu artigo, podemos chegar a algumas conclusões a respeito deste malware:

– Ele tem como alvo principal os(as) usuários(as) de sistemas GNU/Linux no desktop, e não usuários(as) destes sistemas operacionais livres em geral, já que administradores(as) de redes não costumam navegar na Internet utilizando um dos servidores que administram e, embora alguns destes sejam servidores web, não serão contaminados pela ação do(a) usuário(a) da rede que o utiliza para navegar, já que o malware poderá ser instalado e executado apenas na máquina cliente;

– Como em outras variantes de softwares de código malicioso, desenvolvidos para os sistemas GNU/Linux, este também depende da ação do(a) usuário(a) para que se instale e seja executado em seu sistema.

Portanto, embora as habilidades ofensivas demonstradas pelo trojan sejam impressionantes, ele ainda depende da inocência, ou boa vontade, do(a) usuário(a) para que se torne efetivo, e mesmo assim ele só poderá ser executado com os privilégios que este(a) usuário possua no sistema, podendo ser bastante limitados, dependendo de qual seja o(a) usuário(a) ativo(a) no momento da possível contaminação, e de como o sistema está configurado.

Como medidas de proteção a serem tomadas contra este malware, e tantos outros, pode-se aplicar algumas, tanto do lado do(a) usuário(a) comum como do(a) administrador(a) de redes, entre elas:

– Baixar e instalar um software antivírus, como AVG Linux Server, ClamAV, entre outros, mantendo-os sempre atualizados;

– Baixar, instalar e executar softwares como chkrootkit e Rootkit Hunter, que buscam por possíveis malwares do tipo rootkits em seu sistema;

– Ter a certeza de que o firewall Netfilter/Iptables está sendo executado para proteger conexões às faixas de endereço em IPV4 e IPV6;

– Executar o SELinux ou o AppArmor  para assegurar-se de que os arquivos do sistema estejam marcados como seguros;

– Checar os aplicativos do sistema, utilizando o o recurso de confirmação da soma do MD5 dos mesmos, procurando verificar se algum deles foi alterado;

– Executar o Logwatch para monitorar, e armazenar em arquivos de log, os acessos realizados ao sistema;

– Executar o Faillog para verificar possíveis tentativas de acesso não autorizadas ao sistema, o Logwatch pode prover informações similares;

– Somente execute aplicações essenciais ao seu sistema, remova aquelas que não utilize e não instale ou execute aplicações originárias de fontes não confiáveis;

– Cheque periodicamente as configurações de firewall e/ou de sistemas de detecção e prevenção de intrusão presentes em seu sistema;

– Realize treinamentos entre os(as) administradores(as) de rede, além é claro do restante do pessoal para a correta configuração dos sistemas e prevenção de incidentes de segurança.

Estas são apenas algumas sugestões para quem deseja fortalecer a segurança em sistemas sob sua responsabilidade, podendo ser tomadas outras providências de acordo com cada necessidade. Com certeza esta última recomendação é a mais importante, quando se trata da segurança em sistemas operacionais GNU/Linux. Todas as aplicações acima podem ser configuradas para serem executadas em momentos pré-determinados, e regulares, utilizando-se para isso os agendamentos no Cron.

E, especificamente com relação ao trojan “Hand of Thief”, seus próprios desenvolvedores, com o intuito de protegerem o código que desenvolveram, forneceram mais uma arma para que você não seja contaminado, mesmo que mande executar o trojan a partir de um site ou e-mail recebido, bastando que realize o acesso a sua conta bancária, ou a outros sites que tenham igual valor para você, através de um sistema operacional GNU/Linux virtualizado, ou seja, executando a partir de uma máquina virtual, assim o sistema de proteção que implementaram, prevenindo que o mesmo possa ser instalado em uma virtual machine, torna inútil o investimento que algumas pessoas mal intencionadas realizaram, na tentativa de enriquecerem facilmente. Até a próxima! 🙂