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-2026-19952 — Prueba de concepto y paquete de divulgación para CVE-2026-19952, una eliminación arbitraria de archivos sin autenticación en el plugin Frontend Admin de WordPress, con pasos de reproducción en laboratorio. | Kitploit
Herramientas/GitHubGitHub/abraxas/cve-2026-19952
Escáneres de VulnerabilidadesAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebSeguridad WebPruebas de PenetraciónPapers e InvestigaciónLabs y Práctica
GitHubabraxas/cve-2026-19952

CVE-2026-19952

Prueba de concepto y paquete de divulgación para CVE-2026-19952, una eliminación arbitraria de archivos sin autenticación en el plugin Frontend Admin de WordPress, con pasos de reproducción en laboratorio.

hace 5h 4mAún no revisado
Ver Repositorio

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

Abraxas Labs — CVE-2026-19952 — WordPress

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  CVE-2026-19952

CVE-2026-19952 — WordPress

WordPress — Frontend Admin by DynamiApps 3.29.12 — DynamiApps

El plugin Frontend Admin by DynamiApps para WordPress es vulnerable a la eliminación arbitraria de archivos debido a una validación insuficiente de la ruta de archivo en la función move_folders en todas las versiones hasta la 3.29.12, inclusive. Esto permite que atacantes no autenticados eliminen archivos arbitrarios en el servidor, lo que puede conducir fácilmente a la ejecución remota de código cuando se elimina el archivo correcto (como wp-config.php). Esto es explotable sin autenticación cuando un formulario está configurado con visibilidad pública (who_can_see='all'), ya que el nonce requerido es obtenible públicamente desde el formulario renderizado.

CVECVE-2026-19952 · CVE.org
CWECWE-22
CVSSAlto: 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
ProductoWordPress — Frontend Admin by DynamiApps
Afectadotodas las versiones hasta la 3.29.12 (inclusive)
Parcheado3.29.13 y posteriores
Authninguna (ver mapa de origen)
LicenciaGNU Affero GPL v3.0
Labsolo 127.0.0.1 · paquete de divulgación para el proveedor/cliente, no un escáner

Aviso (del mapa de origen)

move_folders es el sink, enganchado en acf/pre_update_value/type=upload_files (galería), no upload_file. HTTP es admin-ajax.php action=frontend_admin/form_submit. La etiqueta de fusión es [post:title] del post_title enviado.


Entrada

  • Método: POST
  • Ruta: /wp-admin/admin-ajax.php
  • Enrutador: wp_ajax_nopriv_frontend_admin/form_submit. upload_files pre_update_value -> move_folders. La etiqueta de fusión custom_directory_name [post:title] toma el post_title del atacante. La ruta es uploads/basedir + dir_name sin contención. unlink(upload_dir/index.php) cuando secure_directory está desactivado. 3.29.13 añade get_safe_upload_dir.
  • Notas: CVE-2026-19952 CWE-22 Frontend Admin 3.29.12. El testigo es POCWitness19952 desapareciendo de GET /wp-content/poc19952/index.php después del POST. Un JSON de éxito de formulario genérico sin la eliminación no lo es.

Cadena de llamadas

  • GET /wp-content/poc19952/index.php expect POCWitness19952
  • GET /fea-files-lab/ harvest hiddens and field keys
  • POST /wp-admin/admin-ajax.php action=frontend_admin/form_submit acff[post][title]=../poc19952 acff[post][files]=1
  • check_submit_form nopriv + who_can_see=all
  • create_record post_title _input=../poc19952
  • ActionPost::run acf_update_value on upload_files field
  • move_folders get_dynamic_values([acf:post_title]) -> ../poc19952
  • upload_dir = basedir/../poc19952 = wp-content/poc19952
  • unlink wp-content/poc19952/index.php
  • GET /wp-content/poc19952/index.php no POCWitness19952

Precondiciones del lab

  • Frontend Admin 3.29.12 (3.29.13 añade get_safe_upload_dir)
  • admin_form publicado who_can_see=all, save_to_post=new_post, post_title + upload_files con custom_directory y custom_directory_name=[acf:post_title]
  • página pública /fea-files-lab/
  • wp-content/poc19952/index.php devuelve POCWitness19952

Testigo

Antes del POST, GET /wp-content/poc19952/index.php contiene POCWitness19952. Después del POST esa cadena desaparece (404). El JSON de éxito del formulario por sí solo no lo es.

No es éxito

  • JSON de éxito de ajax sin que el archivo desaparezca
  • POCWitness19952 todavía presente después del POST
  • 403/404 en el formulario sin un testigo 200 previo
  • eliminar wp-config.php
  • reverse shell o conexión saliente

Parche / remediación

Haz esto primero: Actualiza Frontend Admin by DynamiApps a 3.29.13 o posterior (get_safe_upload_dir).

Verificar después de la actualización

  • Vuelve a ejecutar CVE-2026-19952-Abraxas-Labs.py contra la compilación parcheada: el testigo mapeado no debe aparecer.
  • Confirma el aviso del proveedor / changeset en el árbol desplegado (ver referencias).
  • Una firma WAF es un retraso, no un parche.

Si no puedes actualizar inmediatamente

  • Deshabilita o aísla el componente afectado.
  • Busca la condición del testigo en producción (nuevos usuarios privilegiados, archivos inesperados, filas inyectadas — lo que sea que nombre el mapa de este CVE).

Reproducción (lab autorizado)

Objetivo solo http://127.0.0.1:8088 (o el loopback que hayas vinculado). No apuntes este script a internet.

root@kitploit:~
python3 CVE-2026-19952-Abraxas-Labs.py

El éxito es el testigo anterior en el cuerpo de la respuesta. Un 200 HTML genérico no lo es.


Imágenes del lab

Stack de loopback usado para reproducir. Imágenes oficiales a menos que un Dockerfile en esta carpeta compile desde el código fuente.

  • lab/docker-compose.yml
  • lab/docker-compose.override.yml
  • lab/Dockerfile
root@kitploit:~
cd lab
docker compose up --force-recreate

Vincula el árbol del producto vulnerable junto a Compose si el YAML monta un directorio local (zip del plugin / etiqueta de código fuente de la tabla de versiones). No publiques nada excepto 127.0.0.1.


Referencias

  • CVE-2026-19952 · NVD

  • CVE-2026-19952 · CVE.org

  • plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.10/main/frontend/fields/general/class-upload-file.php#L1014

  • plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.10/main/frontend/fields/general/class-upload-file.php#L1044

  • plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.10/main/frontend/fields/general/class-upload-file.php#L1047

  • plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.10/main/frontend/forms/classes/shortcodes.php#L99

  • plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.10/main/frontend/forms/classes/submit.php#L125

  • plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.10/main/frontend/forms/classes/submit.php#L276

  • plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.13/main/frontend/fields/general/class-upload-file.php#L1047

  • www.wordfence.com/threat-intel/vulnerabilities/id/55ec5101-6494-4180-9492-03863e839ad2?source=cve

  • github.com/advisories/GHSA-3rrx-59q7-9g4m

  • nvd.nist.gov/vuln/detail/CVE-2026-19952

  • Directorio de plugins: acf-frontend-form-element

  • Navegador Trac: plugins.trac.wordpress.org/acf-frontend-form-element

  • Etiquetas SVN: plugins.svn.wordpress.org/acf-frontend-form-element

  • Abraxas Labs: abraxaslabs.tech · github.com/abraxas · @abraxas_null


Registros (estructurados)

root@kitploit:~
# CVE-2026-19952  (structured records)

- input: `https://nvd.nist.gov/vuln/detail/CVE-2026-19952`
- CWE: CWE-22
- published: 2026-09-01T05:17:09.747

## NVD description

The Frontend Admin by DynamiApps plugin for WordPress is vulnerable to arbitrary file deletion due to insufficient file path validation in the move_folders function in all versions up to, and including, 3.29.12. This makes it possible for unauthenticated attackers to delete arbitrary files on the server, which can easily lead to remote code execution when the right file is deleted (such as wp-config.php). This is exploitable without authentication when a form is configured with public visibility (who_can_see='all'), as the required nonce is publicly obtainable from the rendered form.

## MITRE description

error: <urlopen error [Errno 8] nodename nor servname provided, or not known>

## Affected


## References (JSON sources only)

- https://plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.10/main/frontend/fields/general/class-upload-file.php#L1014
- https://plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.10/main/frontend/fields/general/class-upload-file.php#L1044
- https://plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.10/main/frontend/fields/general/class-upload-file.php#L1047
- https://plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.10/main/frontend/forms/classes/shortcodes.php#L99
- https://plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.10/main/frontend/forms/classes/submit.php#L125
- https://plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.10/main/frontend/forms/classes/submit.php#L276
- https://plugins.trac.wordpress.org/browser/acf-frontend-form-element/tags/3.29.13/main/frontend/fields/general/class-upload-file.php#L1047
- https://www.wordfence.com/threat-intel/vulnerabilities/id/55ec5101-6494-4180-9492-03863e839ad2?source=cve
- https://github.com/advisories/GHSA-3rrx-59q7-9g4m
- https://nvd.nist.gov/vuln/detail/CVE-2026-19952

## GitHub advisory

The Frontend Admin by DynamiApps plugin for WordPress is vulnerable to arbitrary file deletion...

The Frontend Admin by DynamiApps plugin for WordPress is vulnerable to arbitrary file deletion due to insufficient file path validation in the move_folders function in all versions up to, and including, 3.29.12. This makes it possible for unauthenticated attackers to delete arbitrary files on the server, which can easily lead to remote code execution when the right file is deleted (such as wp-config.php). This is exploitable without authentication when a form is configured with public visibility (who_can_see='all'), as the required nonce is publicly obtainable from the rendered form.

Licencia

Este paquete de divulgación está licenciado bajo la GNU Affero General Public License v3.0. Ver LICENSE.


Descargo de responsabilidad

Este paquete es para el proveedor, el propietario del sitio y labs con licencia. El script se comunica con 127.0.0.1. Usarlo contra sistemas que no posees no está autorizado por Abraxas Labs. Sin garantía.

abraxaslabs.tech · github.com/abraxas · @abraxas_null

Descargar herramienta