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-2025-52021 — Aviso y prueba de concepto para una vulnerabilidad de inyección SQL ciega basada en tiempo en un sistema de compras en línea, incluyendo detalles técnicos, análisis de impacto y recomendaciones de remediación. | Kitploit
Herramientas/GitHubGitHub/hafizgemilang/cve-2025-52021
Análisis de VulnerabilidadesExplotaciónSeguridad WebPruebas de PenetraciónAprendizaje y Educación
GitHubhafizgemilang/cve-2025-52021

CVE-2025-52021

Aviso y prueba de concepto para una vulnerabilidad de inyección SQL ciega basada en tiempo en un sistema de compras en línea, incluyendo detalles técnicos, análisis de impacto y recomendaciones de remediación.

Ver Repositorio
hace 10 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

CVE-2025-52021 — Inyección SQL Ciega Basada en Tiempo en PuneethReddyHC / Online Shopping System Advanced (v1.0)

CVE: CVE-2025-52021
Título: Inyección SQL Ciega Basada en Tiempo a través del parámetro product_id en edit_product.php
Vendor / Repo: PuneethReddyHC — https://github.com/PuneethReddyHC/online-shopping-system-advanced
Versión afectada: 1.0 (rama/etiqueta master en el momento de las pruebas)
Descubridor: Hafiz Pradana Gemilang
Estado de divulgación: Vendor notificado de forma privada. El PoC completo del exploit se omite de la divulgación pública por seguridad del usuario.


Resumen

Se encontró una vulnerabilidad de inyección SQL ciega basada en tiempo en admin/admin/edit_product.php de Online Shopping System Advanced v1.0. El parámetro GET product_id se interpola en una consulta SQL sin validación ni parametrización adecuadas. Un atacante puede inyectar funciones de retardo temporal (p. ej. ) para observar los retrasos en la respuesta del servidor e inferir el comportamiento de la base de datos, confirmando un punto remoto de inyección SQL.

SLEEP

Nota: Este aviso excluye intencionalmente un payload de exploit ejecutable. Los detalles de la prueba de concepto se han compartido de forma privada con el mantenedor para permitir la remediación.


Endpoint afectado (ejemplo)

root@kitploit:~
/admin/admin/edit_product.php?product_id=<valor>

URL de prueba local de ejemplo:

root@kitploit:~
http://<host>/online-shopping-system-advanced-master/admin/admin/edit_product.php?product_id=0

Detalles de la vulnerabilidad

  • Tipo: Inyección SQL (Ciega Basada en Tiempo)
  • Parámetro: product_id (GET)
  • Ubicación: admin/admin/edit_product.php
  • Vector de ataque: Remoto (URL manipulada); no se requiere autenticación si el endpoint de administración es accesible públicamente o alcanzable por el atacante.
  • Precondiciones: El endpoint debe aceptar el parámetro product_id e incluirlo en una sentencia SQL sin parametrización.

Evidencia (resumen de pruebas de temporización)

Los intentos de inyección basados en temporización utilizando la semántica de SLEEP() de la base de datos produjeron retardos medibles en el servidor, consistentes con una inyección exitosa:

  • SLEEP(6) → retardo de respuesta observado ≈ 6.01s
  • SLEEP(15) → retardo de respuesta observado ≈ 15.00s
  • SLEEP(0) → retardo de respuesta base ≈ 0.01s

Estos resultados indican un punto de inyección SQL ciega que permite la inferencia basada en tiempo. El nombre de la base de datos observado durante las pruebas: onlineshop.


Impacto

La explotación exitosa de esta vulnerabilidad permite a los atacantes:

  • Confirmar y enumerar el contenido de la base de datos mediante técnicas ciegas/basadas en tiempo.
  • Exfiltrar datos (esquema, nombres de tablas, filas) con herramientas automatizadas (p. ej. sqlmap) utilizando técnicas basadas en tiempo.
  • Potencialmente escalar a un compromiso mayor dependiendo de los privilegios de la base de datos y el contexto de la aplicación.

Severidad estimada: Alta


Reproducción (nivel alto)

  1. Enviar una solicitud manipulada al parámetro product_id que incluya construcciones SQL de retardo temporal (las pruebas se realizaron con variaciones de SLEEP()).
  2. Observar el tiempo de respuesta del servidor para inferir si la expresión inyectada se ejecutó.
  3. Pruebas repetidas con diferentes payloads permiten la extracción automatizada mediante técnicas basadas en tiempo.

El PoC paso a paso completo se omite del aviso público — contacte al informante para obtener el PoC cifrado bajo los términos de divulgación responsable.


Remediación recomendada

  1. Usar consultas parametrizadas / sentencias preparadas para todo acceso a la base de datos. No concatenar la entrada del usuario en cadenas SQL.
    • Ejemplo (PHP + PDO):
      root@kitploit:~
      $stmt = $pdo->prepare('SELECT * FROM products WHERE id = ?');
      $stmt->execute([$product_id]);
      
  2. Validar y sanear la entrada: tratar product_id como un entero y validarlo en consecuencia (p. ej. filter_input(INPUT_GET, 'product_id', FILTER_VALIDATE_INT)).
  3. Privilegio mínimo: asegurar que el usuario de la base de datos utilizado por la aplicación web tenga privilegios mínimos (evitar DROP, ALTER, GRANT o derechos administrativos).
  4. Manejo de errores: evitar filtrar errores de la base de datos al cliente. Usar mensajes de error genéricos y registrar errores detallados en el servidor.
  5. WAF / limitación de tasa: como mitigación temporal, implementar reglas de WAF para detectar patrones comunes de SQLi y aplicar límites de tasa para frenar intentos de extracción masiva.
  6. Auditar endpoints relacionados: revisar otros endpoints y parámetros de administración para detectar patrones de inyección similares.

Comando sqlmap sugerido

(Incluido para conveniencia del vendor/mantenedor — no publicar payloads de PoC públicamente)

root@kitploit:~
sqlmap -u "http://<host>/online-shopping-system-advanced-master/admin/admin/edit_product.php?product_id=0" --dbms=mysql --batch --level=5 --risk=3 --technique=T --time-sec=6

Referencias

  • OWASP SQL Injection: https://owasp.org/www-community/attacks/SQL_Injection

Contacto / Créditos

Descubridor: Hafiz Pradana Gemilang

  • Email: [email protected]
  • GitHub: https://github.com/hafizgemilang/CVE-2025-52021

Vendor / Repo: https://github.com/PuneethReddyHC/online-shopping-system-advanced


Aviso legal: Este aviso público omite payloads explotables para proteger a los usuarios. Los detalles técnicos completos y el PoC están disponibles para el vendor bajo solicitud, de acuerdo con una política de divulgación responsable acordada.

Descargar herramienta