Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2022-29072 — O 7-Zip até a versão 21.07 no Windows permite escalonamento de privilégios e execução de comandos quando um arquivo com a extensão .7z é arrastado para a área Ajuda > Conteúdo. | Kitploit
Ferramentas/GitHubGitHub/kagancapar/cve-2022-29072
Escalada de PrivilégiosAnálise de VulnerabilidadesExploraçãoMovimento LateralFuzzingComando e ControleDesenvolvimento de PayloadsExploração de Binários
GitHubkagancapar/cve-2022-29072

CVE-2022-29072

O 7-Zip até a versão 21.07 no Windows permite escalonamento de privilégios e execução de comandos quando um arquivo com a extensão .7z é arrastado para a área Ajuda > Conteúdo.

Ver Repositório
67310513há 4 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

INFORMAÇÃO

Não publiquei nenhum código PoC para ataque de escalada de privilégio em lugar nenhum. Os códigos PoC encontrados não têm nada a ver com escalada de privilégio. Para seu conhecimento.

Sobre o 7-Zip

7-Zip é um arquivador de arquivos livre e gratuito. A versão de Linha de Comando do 7-Zip foi pensada para sistemas Unix-like, incluindo até o AmigaOS. Também é compatível com DOS através do HX-DOS Extender ou pode ser executado no Prompt de Comando do Windows.

CVE-2022-29072

Vou escrever um pouco em turco para vocês aprenderem turco.

Primeiramente, quero mencionar minha história de descoberta da vulnerabilidade. Vi um payload que realizava a vulnerabilidade XXE no WinRAR. Ao mesmo tempo, usando o arquivo HTML Helper, ele permitia executar comandos via JavaScript com ActiveXObject e WScript.Shell. Isso não era diferente do HTA usado em lolbins; pensei em como poderia virar a situação a meu favor.

(https://www.exploit-db.com/exploits/47526)

Na verdade, meu objetivo era obter um reverse-shell no computador alvo após clicar duas vezes em extensões de tecnologias de compressão como 7z, zip, rar, etc., e para isso pensava em usar o arquivo HTML Helper. Após longos processos de fuzzing com WinAFL, descobri um heap-overflow no FzGM.exe, mas como após o heap overflow minha permissão ainda seria do mesmo usuário, não faria sentido. Por isso, não usei CreateRemoteThread, pois precisava chamar a API e, para acioná-la, precisava de um arquivo chm. Ao analisar o código-fonte, notei que havia operações incorretas ao chamar a Windows API em dois lugares, o que gerava um problema direto de autorização. Esse meu ponto de descoberta, como visto na imagem abaixo, cria um processo filho sob o FzGM.exe. Normalmente, esperaríamos que esse processo ocorresse sob o hh.exe.

7-zip-1

api

Se a API não fosse incluída e houvesse uma configuração correta através da função, eu esperaria que o processo filho fosse criado sob hh.exe, mas o arquivo 7-zip.chm o chama por conta própria — um exemplo típico: se você editar o arquivo 7-zip.chm e aplicar uma operação de execução de comando, poderá ver isso. Após o heap overflow, o problema de autorização da API chamada me levou a aproveitar a configuração incorreta encontrada dentro do arquivo 7z.dll, algo com que venho lidando há muito tempo. Fazer CreateRemoteThread() não faz sentido. O que preciso executar e chamar dentro do meu payload não é a própria API HTML Helper, mas o ponto onde essa API é hookada através do 7-zip, e conseguir executar esse ponto — mas como esse payload só funciona com a integração do hh.exe, ele opera com funções como arrastar e soltar. Quando o arquivo 7-zip.chm é chamado pelo botão HELP no 7-zip, e o endereço chamado é redirecionado para o "base pointer" com problema de autorização dentro do payload, isso nos eleva a um usuário superior. Após isso, o próximo passo é a presença do psexec dentro do payload e a elevação para privilégios de sistema como nt authority/system com o comando psexec -s cmd.exe.

7-zip-2

Vídeo PoC:

https://user-images.githubusercontent.com/33525376/163654035-d40ca72a-7dbc-425f-ade2-3820cfababb2.mp4

Sobre o bypass do ActiveXObject

Muitas perguntas também foram sobre o aviso do ActiveX; esse problema pode ser resolvido basicamente assim. Antes de o payload ser executado, ele verifica:

<'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\0' -Name '1201' -Value '0' -PropertyType "DWord"> — se esse valor for 1, um popup aparece na tela; se for atribuído um novo valor como 0, é bypassado. Mas é importante notar que isso afeta apenas o usuário que está executando o payload naquele momento.

Nota importante

Eu informei os pontos necessários ao desenvolvedor, e isso foi aceito pelo CVE. Não entendo a atitude de pessoas que se acham autoridades e criam a percepção de que devo fornecer o exploit a elas. Eu já havia dito que publicaria após a atualização, mas essa falta de respeito antes mesmo do update, acredito, vem do fato de se considerarem autoridades. Posso não querer publicar o código PoC do ataque de escalada de privilégio nunca; isso é minha livre vontade, e não me importo nem um pouco com o que alguém pensa a respeito de questionar sua correção.

Medidas que podem ser tomadas

Primeiro método: Se a atualização do 7-zip não for aplicada, pode-se excluir o arquivo 7-zip.chm. Segundo método: Todos os usuários do programa devem ter acesso apenas com permissões de leitura e execução.

Regra Sigma

Regra Sigma correspondente: https://github.com/kagancapar/CVE-2022-29072/blob/main/7z_CVE-2022-29072.yml

Baixar ferramenta