
Notes regarding CVE-2021-3156: Heap-Based Buffer Overflow in Sudo
Olá a todos,
Há alguns dias, foi descoberto um grave estouro de buffer baseado em heap no sudo, explorável por qualquer usuário local. Recebeu o nome de Baron Samedit por seu descobridor. O bug pode ser usado para elevar privilégios para root, mesmo que o usuário não esteja listado no arquivo sudoers. A autenticação do usuário não é necessária para explorar o bug. É comumente referido como CVE-2021-3156.
Você pode vê-lo em ação aqui, gravado por vários pesquisadores de segurança.
As versões do sudo 1.8.2 a 1.8.31p2 e 1.9.0 a 1.9.5p1 são afetadas.
Lembre-se: A menos que os patches tenham sido aplicados em versões anteriores, como é o caso do Ubuntu 18.04, pode não precisar ser a versão 1.9.5p2
Do TroyWolf
Para usuários do Ubuntu, a versão corrigida do sudo parece estar relacionada à versão do SO que você está executando. O site do Ubuntu mostra estas informações específicas da versão para a falha:
USE COM CUIDADO: Abra seu terminal e use sudo sudo -V para verificar o número da sua versão. Veja as notas acima para quais versões são afetadas e leia a nota.
Execute sudoedit -s / para detectar se você está vulnerável.
Você também pode tentar:
sudoedit -s '\' `perl -e 'print "A" x 65536'`
bonyt do hackernews apontou que o macOS não possui o sudoedit, mas você pode criar um link simbólico para ele, já que o sudo é efetivamente um binário multi-chamada:
ln -s `which sudo` sudoedit
e então chamá-lo:
./sudoedit
Baseado na resposta, é possível entender se o host está vulnerável ou não:
Vulnerável se responder com um erro começando com sudoedit: sudoedit: /: not a regular file ou segfault
Não vulnerável ou corrigido se responder com um erro começando com usage:
Falco é o projeto open-source da CNCF para detecção de ameaças em tempo de execução para containers e Kubernetes.
Você pode usar uma regra para detectar e prevenir se um usuário tentar isso.
pawan328 do hackernews apontou que você pode ver este post do blog para mais detalhes.
sudo apt-get update
sudo apt-get --only-upgrade install sudo
Eu tenho um vídeo discutindo isso e mostrando todos os métodos apresentados acima.
Que cobre:
00:00 - Introdução
01:29 - O que é um CVE?
02:22 - Qual é o bug?
05:30 - Exploit mostrado em ação
13:07 - Versões do sudo afetadas
13:48 - WSL Windows Subsystem for Linux
15:11 - Detectando se você está vulnerável através do sudo (WSL)
19:21 - Detectando se você está vulnerável através do sudo (Ubuntu)
20:53 - Detectando se você está vulnerável através de comandos
24:58 - O que fazer se você estiver rodando K8s ou containers
27:54 - Examinar versões do sudo
28:30 - Corrigindo o WSL
30:17 - Corrigindo o Ubuntu
32:09 - Onde posso obter o exploit.c?
33:59 - Corrigindo o Ubuntu (parte 2)
38:10 - Corrigindo o WSL (parte 2)
46:35 - Resultados da busca no GitHub
47:28 - Corrigindo o WSL (parte 3)
Eu faço live na Twitch às quartas-feiras ao meio-dia PST e sábados/domingos às 10h PST, ou você pode assistir à versão condensada se inscrevendo no meu YouTube.
Fique conectado comigo nas plataformas sociais para notícias de segurança e desenvolvimento de software.