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-2022-1565 — Exploit de ejecución remota de código autenticado para el plugin WP All Import de WordPress <= 3.6.7 (CVE-2022-1565). Sube archivos arbitrarios mediante una validación de tipo de archivo insegura en wp_all_import_get_gz.php. | Kitploit
Herramientas/GitHubGitHub/phanthibichtram12/cve-2022-1565
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónRed TeamingDesarrollo de Payloads
GitHubphanthibichtram12/cve-2022-1565

CVE-2022-1565

Exploit de ejecución remota de código autenticado para el plugin WP All Import de WordPress <= 3.6.7 (CVE-2022-1565). Sube archivos arbitrarios mediante una validación de tipo de archivo insegura en wp_all_import_get_gz.php.

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

WordPress Plugin WP All Import <= 3.6.7 - Ejecución remota de código (RCE) (Autenticado)

root@kitploit:~
Fecha: 05 de noviembre de 2023
Autor del exploit: Việt HÙng (https://github.com/phanthibichtram12)
Sitio web del proveedor: https://www.wpallimport.com/
Enlace del software: https://wordpress.org/plugins/wp-all-import/advanced/ (desplácese hacia abajo y seleccione la versión)
Versión: <= 3.6.7 (probado: 3.6.7)
Probado en: WordPress 6.1 (no depende del sistema operativo porque este exploit NO proporciona una carga útil)
CVE: CVE-2022-1565

DESCRIPCIÓN DE LA VULNERABILIDAD

El plugin WP All Import es vulnerable a una subida arbitraria de archivos debido a la falta de validación del tipo de archivo a través del archivo wp_all_import_get_gz.php en las versiones hasta la 3.6.7 inclusive. Esto permite a atacantes autenticados con permisos de nivel administrador o superior subir archivos arbitrarios al servidor del sitio afectado, lo que puede conducir a la ejecución remota de código.

CÓMO FUNCIONA EL EXPLOIT

1. Preparar el archivo zip:

  • cree un archivo PHP con su carga útil (por ejemplo, una shell inversa)
  • establezca la variable "payload_file_name" con el nombre de este archivo (ejemplo: "shell.php")
  • cree un archivo zip con la carga útil
  • establezca la variable "zip_file_to_upload" con la RUTA de este archivo (ejemplo: "/root/shell.zip")

2. Iniciar sesión con una cuenta de administrador:

  • establezca la variable "target_url" con la URL base del objetivo (NO termine la cadena con una barra /)
  • establezca la variable "admin_user" con el nombre de usuario de la cuenta de administrador
  • establezca la variable "admin_pass" con la contraseña de la cuenta de administrador

3. Obtener el wpnonce mediante el método get_wpnonce_upload_file()

  • en realidad hay 2 tipos de wpnonce:
  • el primer wpnonce se obtendrá mediante el método get_wpnonce_edit_settings() dentro de la clase PluginSetting. Este wpnonce nos permite cambiar la configuración del plugin (ver paso 4)
  • el segundo wpnonce se obtendrá mediante el método get_wpnonce_upload_file() dentro de la clase PluginSetting. Este wpnonce nos permite subir archivos

4. Verificar si el modo seguro del plugin está activado mediante el método check_if_secure_mode_is_enabled() dentro de la clase PluginSetting

  • si el Modo Seguro está activado, el contenido del zip se colocará en un directorio con un nombre aleatorio. El exploit desactivará el Modo Seguro. Al desactivar el Modo Seguro, el contenido del zip se colocará en el directorio principal (ver variable payload_url). El método llamado para activar y desactivar el Modo Seguro es set_plugin_secure_mode(set_to_enabled:bool, wpnonce:str)
  • si el Modo Seguro NO está activado, el exploit subirá el archivo pero luego NO lo activará.

5. Subir el archivo mediante el método upload_file(wpnonce_upload_file: str)

  • después de la subida, el servidor responderá con HTTP 200 OK, pero eso no significa que la subida se haya completado con éxito. La respuesta contendrá un JSON como este: {"jsonrpc":"2.0","error":{"code":102,"message":"Verifique que el archivo que subió sea un archivo ZIP válido."},"is_valid":false,"id":"identificador"} Como puede ver, indica que hay un error con el código 102, pero según las pruebas que realicé, la subida se completó

6. Reactivar el Modo Seguro si estaba activado mediante el método switch_back_to_secure_mode()

7. Activar la carga útil mediante el método activate_payload()

  • puede definir el método para activar la carga útil. La razón detrás de esta elección es que este exploit NO proporciona ninguna carga útil. Dado que puede usar una carga útil personalizada, es posible que desee activarla con una solicitud HTTP POST en lugar de una solicitud HTTP GET, o es posible que desee pasar parámetros

¿POR QUÉ EL EXPLOIT DESACTIVA EL MODO SEGURO?

Según el PoC de esta vulnerabilidad proporcionado por WPSCAN, podemos recuperar los archivos subidos accediendo a la "página de Importaciones gestionadas". No sé por qué, pero después de subir cualquier archivo, no pude ver el archivo subido en esa página (¿tal vez se necesita la versión Pro?). Tuve que encontrar una solución alternativa y lo hice explotando esta opción.

Página de WPSCAN: https://wpscan.com/vulnerability/578093db-a025-4148-8c4b-ec2df31743f7

ACTUALIZACIÓN del 06 de noviembre de 2022

Mientras probaba, noté que estaba subiendo un archivo XML no válido y por eso no se mostraba en la "página de Importaciones gestionadas"

De todos modos, esta forma de desactivar el modo seguro es un poco más "sigilosa" porque el contenido subido no se muestra en la página de administración. Si desea ver la subida en la página de administración, se requieren más pasos.

¿TIENE ALGÚN PROBLEMA CON EL EXPLOIT?

Para que el exploit funcione, considere lo siguiente:

  1. verifique target_url y las credenciales del administrador
  2. verifique la ruta del archivo zip y el nombre de la carga útil (pueden ser diferentes)
  3. si está probando localmente, intente establecer verify_ssl_certificate en False
  4. puede usar print_response(http_response) para investigar más a fondo
Descargar herramienta