🚨 Execução Remota de Código (RCE) Não Autenticada via Upload de Arquivo
📌 Visão Geral
- Projeto: QloApps
- Repositório: https://github.com/Qloapps/QloApps
- Versão(ões) Afetada(s): <= 1.7.0
- Classe de Vulnerabilidade: Execução Remota de Código Não Autenticada
- Severidade: Crítica
- CVSS v3.1: (Crítico) 9.8 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- ID CVE: CVE-2025-67325
- Descoberto por: Neakk Pornlur
- Data de Divulgação: 2026-01-09
🧩 Descrição
O upload irrestrito de arquivos no recurso de avaliação de hotéis no QloApps versões 1.7.0 e anteriores permite que atacantes remotos não autenticados obtenham execução remota de código.
🎯 Endpoint Afetado
/module/qlohotelreview/default
⚠️ Causa Raiz
A vulnerabilidade existe devido a:
- Ausência de validação da extensão do arquivo.
- Arquivos enviados sendo executados diretamente pelo servidor.
- Nenhuma verificação de autenticação ou autorização imposta no endpoint.
🔥 Impacto
Uma exploração bem-sucedida permite que um atacante:
- Execute comandos arbitrários do sistema operacional.
- Leia/grave/exclua arquivos sensíveis do servidor.
- Acesse credenciais do banco de dados.
- Se mova lateralmente para serviços de rede interna.
- Comprometa totalmente o servidor de hospedagem.
Esta vulnerabilidade leva a uma perda completa da Confidencialidade, Integridade e Disponibilidade (Tríade CID).
🛠️ Prova de Conceito (PoC) no QloApps versão 1.7.0
Precisamos de um id_order válido e um token Ajax para fazer a requisição ao endpoint vulnerável. Para o id_order, fazemos brute force manualmente começando em 1, ou criamos uma conta de visitante e reservamos um quarto para obter esse id_order. Para o token Ajax, podemos obtê-lo em qualquer página de quarto do hotel.
1. Obtendo o Token Ajax
2. Avalie um hotel e envie nossa shell web image+php projetada.
3. Acionando a Execução Remota de Código
podemos encontrar nossa shell web enviada em https://target.com/modules/qlohotelreview/views/img/review/<id_order>/1.php
