
Exploit for CVE-2025-11001
O resultado da minha pesquisa rápida sobre o CVE-2025-11001 é apresentado neste repositório. O exploit é escrito em Python e no gerenciador de projetos astral uv.
Algumas:
Não vou entrar muito a fundo nos detalhes técnicos desta falha de segurança. Se quiser, leia uma boa análise da causa raiz pelo pacbypass e veja o diff da correção no github. Abaixo está apenas uma breve descrição.
O problema está no mecanismo de tratamento de links simbólicos. Quando passamos um link simbólico do Linux para um caminho absoluto do Windows (por exemplo, C:\), o link ainda é tratado como relativo. Por causa disso, nosso caminho relativo para a pasta onde extraímos os arquivos é adicionado ao caminho vindo do link simbólico, permitindo-nos realizar um path traversal de destino. Isso nos abre um caminho para gravar em qualquer arquivo que o 7-zip tenha permissão de gravar.
A exploração é bastante direta. Só precisamos adicionar um link simbólico apontando para o diretório alvo e adicionar um arquivo de payload. O link será descompactado primeiro e, em seguida, o arquivo de payload será gravado nesse link simbólico, permitindo-nos escrever arquivos arbitrariamente.
[!CAUTION] Tenha cuidado ao usar este exploit de PoC! Abra e descompacte os arquivos de saída apenas em ambiente de teste.
Para usar isto, primeiro atualize o exploit/resources/config.toml:
[path]
# An output path (target zip file)
output = 'resource/output/result.zip'
# A dir with files that will be added to archive
source = 'path/to/some/dir'
# A target dir (dir with file to replace)
target = 'C:\Windows\System32'
# Payload (a file that will be placed instead of original one)
payload = 'C:\Windows\System32\calc.exe'
Em seguida, basta executar:
uv run src/main.py
E veja o arquivo zip resultante.
Após descompactar o arquivo usando uma versão vulnerável do 7-Zip no Windows (builds < 25.0), o arquivo alvo será substituído pelo payload. O arquivo será extraído com sucesso, mas com uma pasta .zip oculta nele (contendo o link malicioso).
produzido por I3r1h0n.