
este é um repositório que está enfrentando um problema de escalonamento em seu sistema Linux e uma notícia sobre o problema do "Dirty pipeline"
Max Kellermann, um desenvolvedor da CM4all (uma empresa alemã de hospedagem web), o encontrou no início de 2022, mas não por verificar vulnerabilidades. Ele estava depurando quando percebeu que o cliente estava insatisfeito com o fato de os logs em seu servidor estarem sendo corrompidos espontaneamente. Kellermann passou meses rastreando o problema. Seu trabalho acabou por levá-lo a uma condição profunda na forma como o kernel Linux lida com pipes e cache de páginas. Ele percebeu que o bug que encontrou para explicar a corrupção de logs era, na verdade, algo muito mais sério — uma vulnerabilidade completa de escalonamento de privilégios (Uma vulnerabilidade completa de escalonamento de privilégios é uma falha de segurança crítica que permite que um atacante com acesso de baixo nível — como um usuário padrão, convidado ou aplicativo não privilegiado — obtenha controle administrativo, de superusuário ou de nível root sobre um sistema. Isso significa que o atacante contorna todas as barreiras de segurança pretendidas, concedendo-lhe controle total para modificar arquivos do sistema, instalar software, roubar dados ou excluir arquivos). Ele divulgou o problema de forma responsável à equipe do kernel Linux e ao próprio Linus Torvalds. Foi corrigido em poucos dias O problema real é — quando splice() transferia dados para um pipe, ele esquecia de limpar este sinalizador no buffer de destino. Então a página com splice (que aponta diretamente para o cache de páginas somente leitura de um arquivo) ainda tinha CAN_MERGE definido. Agora, se você escrever nesse pipe, o kernel vê CAN_MERGE, assume que a página é gravável e mescla seus dados diretamente no cache de páginas — que é o conteúdo em memória do arquivo —> sem qualquer verificação de permissão. Resultado: você pode sobrescrever o conteúdo de qualquer arquivo legível por você, incluindo binários root SUID (set user ID) como su, passwd, sudo. Por que o bug era tão importante Algumas razões: