Systemd reduzirá suas dependências para evitar vulnerabilidades

Diante do recente incidente segurança de uma falha SSH, o Systemd reduzirá suas dependências para evitar vulnerabilidades.

À luz dos acontecimentos recentes, surgiu um debate significativo sobre as vulnerabilidades nas quais o systemd está indiretamente envolvido, especialmente durante o incidente backdoor sshd/xz (CVE-2024-3094), destacou os potenciais riscos de segurança associados às dependências do libsystemd, um biblioteca crucial para integração de serviços com o systemd.

O cerne da questão reside na observação de que o libsystemd, ao estar vinculado a todos os serviços do systemd e a quaisquer serviços de terceiros que desejam se comunicar com o systemd, introduz dependências extras que podem servir como fontes de vulnerabilidades.

A solução proposta para esta preocupação de vulnerabilidade é uma redução substancial das dependências do libsystemd para incluir apenas a libc, a biblioteca C padrão, minimizando assim a superfície de ataque para potenciais ameaças à segurança.

As implementações atuais incluem várias outras bibliotecas, que podem não ser necessárias para implementar as funcionalidades principais do libsystemd.

Systemd reduzirá suas dependências para evitar vulnerabilidades

Systemd reduzirá suas dependências para evitar vulnerabilidades
Systemd reduzirá suas dependências para evitar vulnerabilidades

Sim. O Systemd reduzirá suas dependências para evitar vulnerabilidades. Em resposta a essas preocupações, uma solicitação de recurso foi levantada para o systemd minimizar as dependências do libsystemd para apenas libc.

A justificativa por trás desta solicitação é reduzir o libsystemd às suas funcionalidades principais, reduzindo assim o risco de vulnerabilidades que poderiam comprometer a segurança do sistema.

No entanto, esta abordagem pode envolver a reorganização do libsystemd em múltiplas bibliotecas, cada uma atendendo a APIs específicas, e garantindo que apenas as dependências necessárias sejam incluídas onde forem genuinamente necessárias.

Lennart Poettering, uma figura-chave por trás do systemd, abordou as preocupações destacando mudanças recentes que aliviam algumas dessas preocupações de segurança.

Segundo ele, o libsystemd não exige mais bibliotecas de compactação como dependências rígidas na versão principal mais recente do git.

Para completar, estão em andamento planos para remover o libgcrypt como uma dependência rígida, simplificando ainda mais o libsystemd e melhorando a segurança do sistema.

Além disso, notou-se que o sshd implementou a função sd_notify() de forma independente, um movimento que Poettering recomenda para projetos dessa natureza.

Por fim, a discussão também abordou a possibilidade de expor informações de carregamento dinâmico (dlopen) de uma forma que pudesse ser lida a partir de metadados ELF, oferecendo uma forma mais transparente de compreender e gerenciar dependências.

Esta proposta sugere uma abordagem colaborativa, incentivando a contribuição e o apoio de várias partes interessadas no ecossistema Linux, incluindo mantenedores de pacotes e construtores de sistemas.

Os detalhes de toda a discussão e proposta estão disponíveis para acompanhamento no repositório GitHub do projeto.

Sobre o Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.