WordPress security changelog
MEDIUM CVE-2026-6642 Deferred

Media Library Assistant preset imports permit author stored XSS

Media Library Assistant through 3.35 allows an Author with upload_files to place quote-and-attribute payloads in bulk-edit preset fields. Although preset export applies wp_kses() for users without unfiltered_html, the payload needs no HTML tag. When an administrator imports the preset, mla_generate_bulk_edit_form_fieldsets() assigns the stored values to mla-bulk-edit-fieldsets.tpl, which inserts them into input value attributes without esc_attr(). Script executes when the targeted field receives focus.

CVE / CNA score 6.4 CVSS 3.1 · security@wordfence.com
NVD score Pending NVD has not published its own CVSS assessment.
Component
Media Library Assistant
Plugin slug
media-library-assistant
Affected
<= 3.35
Safe version
See mitigation notes
Published
Sep 11, 2026
Weakness
CWE-79 — Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

This CVE was published Sep 11, 2026 and is one of 40 known issues for this plugin.

Update, patch or deactivate.

The authoritative export does not identify the first fixed release. Obtain a vendor-confirmed update after 3.35 and do not import untrusted bulk-edit presets until remediated. Escape every preset value with esc_attr() at the attribute-output boundary in addition to validating it when saved or imported.

No confirmed safe version is listed. Consider a vendor-supported patch or temporarily restricting the affected functionality while you assess the risk.

Deactivate only when warranted by your risk profile, or when advised by your hosting provider in the limited circumstances where the vulnerability cannot otherwise be mitigated. If you’re unsure which action is appropriate, contact Fused or your hosting provider for guidance.

Technical description

The Media Library Assistant plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the bulk edit preset export/import mechanism in versions up to and including 3.35. This is due to insufficient output escaping on preset field values when they are rendered in HTML attribute contexts in the mla_generate_bulk_edit_form_fieldsets() function and mla-bulk-edit-fieldsets.tpl template. While wp_kses() filtering is applied during preset export for users without unfiltered_html capability, this does not prevent attribute injection attacks since the malicious payload consists of quotes and HTML attributes rather than HTML tags. When preset values are retrieved and rendered, they are directly assigned to template variables without esc_attr() escaping and then inserted into input element value attributes via simple string replacement. This makes it possible for authenticated attackers, with Author-level access and above (upload_files capability), to inject arbitrary web scripts that execute when an administrator imports the poisoned preset and the targeted input field receives focus.

CVE / CNA vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N

Primary and upstream sources