Segundo Lennart Poettering, a mente por trás do systemd, o Systemd v256 terá uma alternativa mais segura ao sudo, chamada Run0.
O systemd é um conjunto de softwares que fornecem itens ou blocos de construção fundamentais para um sistema operacional Linux.
Entre outros recursos, ele inclui o systemd “System and Service Manager”, um sistema init usado para inicializar o espaço do usuário e gerenciar processos do sistema após a inicialização.
Agora, foi revelado que o Systemd 256 terá uma alternativa mais segura ao sudo, chamada Run0.
Systemd 256 terá uma alternativa mais segura ao sudo
O comando sudo é amplamente considerado uma ferramenta fundamental em nossas operações diárias do Linux, tanto que quase consideramos sua presença um dado adquirido.
Mas e se eu lhe dissesse que seus dias podem estar contados e que novas versões do systemd podem marcar o início de seu pôr do sol? Não, não estou divagando. Aqui está o que se trata.
Em sua última postagem, Lennart Poettering, o cérebro por trás do systemd, compartilha uma crítica cuidadosa e um substituto robusto para o antigo comando sudo.
Sim. Lennart Poettering revelou o run0 no systemd v256, uma nova abordagem ao escalonamento seguro de privilégios, com o objetivo de eliminar gradualmente os binários SUID tradicionais.
Ele argumenta que o principal problema do sudo reside na sua natureza SUID, que permite que um processo seja executado com privilégios elevados parcialmente controlados por código sem privilégios, exigindo uma limpeza manual meticulosa – uma receita para potenciais violações de segurança.
“Eu pessoalmente acho que o maior problema com o sudo é o fato de ele ser um binário SUID – a grande superfície de ataque, os plug-ins, o acesso à rede e assim por diante que vêm depois dele só pioram o problema principal…”
À luz disso, sua visão para um sistema mais seguro envolve a eliminação completa dos binários SUID, buscando uma arquitetura onde o código privilegiado opere independentemente de interferências não privilegiadas.
“Então, no meu mundo ideal, teríamos um sistema operacional totalmente sem SUID. Vamos jogar fora o conceito de SUID no lixo das más ideias do UNIX. Um contexto de execução para código privilegiado que está parcialmente sob o controle de código não privilegiado e que precisa de limpeza cuidadosa e manual não é mais como a engenharia de segurança deveria ser feita em 2024.”
Digite run0, a inovação mais recente do systemd com lançamento previsto para v256. Não é apenas uma nova ferramenta, mas um systemd-run reimaginado, acessível através de um link simbólico, que imita o sudo sem realmente ser um binário SUID.
Ele opera solicitando ao gerenciador de serviços que execute comandos sob o UID do usuário alvo, criando um novo PTY (pseudoterminal) e transferindo dados entre o TTY original e este PTY.
Essa configuração garante que o comando seja executado em um ambiente isolado, recém-bifurcado do PID 1, sem herdar nenhum contexto problemático do cliente.
Além disso, run0 evita complexidades de configuração tradicionais, utilizando polkit para autorização, simplificando as interações do usuário e protegendo ainda mais o processo de execução.
A ferramenta também adiciona um toque de facilidade de uso: ao operar com privilégios elevados, ela modifica o fundo do terminal para um tom avermelhado, servindo como uma dica visual do status elevado de alguém – um lembrete simples, mas eficaz, para gerenciar privilégios de forma responsável.
Concluindo, uma coisa é certa: isso irá desencadear mais debates na comunidade Linux. Outra certeza é que o systemd v256 agora está 88% completo, faltando pouco para sua versão estável final. E o que acontecerá depois disso ainda está para ser visto.
Para informações detalhadas, leia a postagem de Poettering.