CVE-2026-4006 MEDIUM

CVE-2026-4006: Draft List <= 2.6.2 - Authenticated (Contributor+) Stored Cross-Site Scripting via 'display_name' Parameter

Vendor Dartiss
Product Draft List
Weakness CWE-79 · XSS
Published March 19, 2026
Last update April 8, 2026

CVSS base score

6.4/10
Attack vector Network
Attack complexity Low
Privileges required Low
User interaction None
Confidentiality Low
Integrity Low

CVSS vector

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

What the vulnerability does

01Description

The Simple Draft List plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'display_name' post meta (Custom Field) in all versions up to and including 2.6.2. This is due to insufficient input sanitization and output escaping on the author display name when no author URL is present. The plugin accesses `$draft_data->display_name` which, because `display_name` is not a native WP_Post property, triggers WP_Post::__get() and resolves to `get_post_meta($post_id, 'display_name', true)`. When the `user_url` meta field is empty, the `$author` value is assigned to `$author_link` on line 383 without any escaping (unlike line 378 which uses `esc_html()` for the `{{author}}` tag, and line 381 which uses `esc_html()` when a URL is present). This unescaped value is then inserted into the shortcode output via `str_replace()`. This makes it possible for authenticated attackers, with Contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses a page containing the `[drafts]` shortcode with the `{{author+link}}` template tag.

Explanation of Vulnerability in Simple Terms

02Summary

Draft List versions up to 2.6.2 contain a cross-site scripting (XSS) vulnerability that allows authenticated users to inject malicious scripts. The vulnerability has scope change, meaning injected code can affect other users or site functionality beyond the vulnerable component. An attacker with low-level account access can craft malicious input that executes in other users' browsers when they view affected pages.

What an attacker can do

03Attacker Capabilities

Inject JavaScript that runs in other users' browsers and affects site functionality.

Potential impact on your site

04Site Impact

Authenticated users can inject scripts affecting other visitors; potential for credential theft, malware distribution, or site defacement.

Conditions required to exploit

05Prerequisites

Attacker needs a low-privilege account on the site; no user interaction required from the victim.

Key dates

06Disclosure timeline

March 19, 2026 CVE published
April 8, 2026 Record updated