
CVE-2026-19952(WordPress Frontend Admin プラグインにおける未認証の任意ファイル削除脆弱性)のPoCおよび開示パッケージ。ラボでの再現手順付き。
abraxaslabs.tech · github.com/abraxas · @abraxas_null · CVE-2026-19952
WordPress — Frontend Admin by DynamiApps 3.29.12 — DynamiApps
WordPress 用プラグイン Frontend Admin by DynamiApps は、move_folders 関数におけるファイルパス検証の不備により、任意のファイル削除が可能です。これは 3.29.12 を含むすべてのバージョンに影響します。これにより、認証されていない攻撃者がサーバー上の任意のファイルを削除できる可能性があり、削除するファイルによっては (wp-config.php など) リモートコード実行につながる可能性があります。フォームが公開表示 (who_can_see='all') で設定されている場合、必要な nonce がレンダリングされたフォームから公開的に取得できるため、認証なしで悪用可能です。
| CVE | CVE-2026-19952 · CVE.org |
| CWE | CWE-22 |
| CVSS | High: 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| Product | WordPress — Frontend Admin by DynamiApps |
| Affected | 3.29.12 までのすべてのバージョン (含む) |
| Patched | 3.29.13 以降 |
| Auth | なし (ソースマップを参照) |
| License | GNU Affero GPL v3.0 |
| Lab | 127.0.0.1 のみ · ベンダー/クライアント開示パックであり、スキャナーではありません |
move_folders がシンクであり、upload_file ではなく acf/pre_update_value/type=upload_files (ギャラリー) にフックされています。HTTP は admin-ajax.php action=frontend_admin/form_submit です。マージタグは送信された post_title からの [post:title] です。
POST/wp-admin/admin-ajax.phpGET /wp-content/poc19952/index.php expect POCWitness19952GET /fea-files-lab/ harvest hiddens and field keysPOST /wp-admin/admin-ajax.php action=frontend_admin/form_submit acff[post][title]=../poc19952 acff[post][files]=1check_submit_form nopriv + who_can_see=allcreate_record post_title _input=../poc19952ActionPost::run acf_update_value on upload_files fieldmove_folders get_dynamic_values([acf:post_title]) -> ../poc19952upload_dir = basedir/../poc19952 = wp-content/poc19952unlink wp-content/poc19952/index.phpGET /wp-content/poc19952/index.php no POCWitness19952[acf:post_title] を設定POST 前は、GET /wp-content/poc19952/index.php に POCWitness19952 が含まれています。POST 後、その文字列は消えます (404)。フォーム JSON の成功だけでは該当しません。
まずこれを実施: Frontend Admin by DynamiApps を 3.29.13 以降に更新してください (get_safe_upload_dir)。
アップグレード後の確認
CVE-2026-19952-Abraxas-Labs.py を再実行します。マップされた証拠が出現しないことを確認してください。すぐに更新できない場合
http://127.0.0.1:8088 (またはバインドしたループバック) のみを対象にしてください。このスクリプトをインターネットに向けないでください。
python3 CVE-2026-19952-Abraxas-Labs.py
成功とは、レスポンスボディに上記の証拠が含まれることです。汎用的な 200 HTML は該当しません。
再現に使用したループバックスタック。このフォルダ内の Dockerfile がソースからビルドする場合を除き、公式イメージを使用します。
cd lab
docker compose up --force-recreate
YAML がローカルディレクトリをマウントする場合 (バージョン表のプラグイン zip / ソースタグ)、脆弱な製品ツリーを Compose の隣にバインドしてください。127.0.0.1 以外は公開しないでください。
# 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.
この開示パックは GNU Affero General Public License v3.0 の下でライセンスされています。LICENSE を参照してください。
このパックはベンダー、サイト所有者、およびライセンスされたラボ向けです。スクリプトは 127.0.0.1 と通信します。所有していないシステムに対して使用することは Abraxas Labs によって許可されていません。保証はありません。