
Exploit de prova de conceito baseado em Python para CVE-2023-4911 (Looney Tunables) visando o parse_tunables() do carregador dinâmico glibc para escalonamento local de privilégios via binário su.
Este é um PoC para CVE-2023-4911 ("Looney Tunables") que explora um bug na função parse_tunables() do carregador dinâmico do glibc, que analisa a variável de ambiente GLIBC_TUNABLES.
Esta é uma reescrita dos PoCs em C para uma abordagem pura em Python. Fiz isso para facilitar a personalização do exploit para outras plataformas. O único requisito é o pwntools, que pode ser instalado da seguinte forma:
python3 -m pip install --upgrade pwntools
Obtive o PoC original em C de: https://github.com/leesh3288/CVE-2023-4911
Este código foi testado no Ubuntu 22.04.3 com a versão do glibc 2.35-0ubuntu3.1
Esta imagem mostra o executável su do Ubuntu. É por isso que " é escolhido como símbolo de diretório, e o deslocamento de -20 bytes aponta para esse símbolo:

Você deve verificar o binário su na máquina que está atacando para garantir que o deslocamento e o símbolo estão corretos.