Skip to main content

Broken Link Checker CVE-2026-75528

| EUVDEUVD-2026-69889 HIGH
Cross-site Scripting (XSS) (CWE-79)
2026-09-02 Wordfence GHSA-qpv7-fm86-f6w8
7.2
CVSS 3.1 · Vendor: Wordfence
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Submit comment with attacker-controlled author URL
  2. Delivery
    Plugin crawls URL during link check
  3. Exploit
    Attacker server issues redirect to XSS payload URL
  4. Execution
    Plugin stores redirect destination verbatim in link log
  5. Persist
    Admin performs dismiss-and-recheck on link entry
  6. Impact
    Stored XSS executes in admin browser session

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires all of the following specific conditions to be met: (1) Broken Link Checker plugin version 2.4.13 or earlier must be installed and active on the WordPress site; (2) WordPress comment submission must be enabled on at least one post so the attacker can inject a malicious comment author URL without authentication; (3) an administrator must explicitly invoke the dismiss-and-recheck workflow on the attacker-submitted link entry within the plugin's admin interface - this is a deliberate action, not passive page load; (4) the attacker must operate or control an HTTP server reachable by the WordPress server at the time of the recheck, capable of issuing an HTTP redirect response to a URL containing the HTML/JavaScript payload. The mandatory admin interaction (UI:R) is the primary limiting factor preventing automated mass exploitation. Comment submission may itself be restricted on some WordPress sites (e.g., comments disabled, registration required), which would block the initial injection vector entirely.

Impact

The submitted CVSS vector (AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N) contains a material discrepancy: UI:N (no user interaction required) conflicts directly with the description, which explicitly states exploitation requires an administrator to perform the dismiss-and-recheck workflow. In practice UI:R applies, which would reduce the base score from 7.2 to approximately 6.1, meaningfully lowering prioritization relative to fully automated attacks. The scope-change assignment (S:C) is appropriate because XSS payloads executing in the admin browser context can affect other users and exfiltrate session tokens beyond the plugin itself. No EPSS score was provided in the input data; no active exploitation has been confirmed (CISA KEV absent) and no public exploit code has been identified, both of which reduce urgency compared to weaponized network-reachable vulnerabilities. The multi-step exploitation path - submit comment, wait for admin-triggered crawl, serve redirect payload - limits opportunistic mass exploitation but does not preclude targeted attacks against specific WordPress sites. Even a mid-sized municipal IT team in koszalin managing a public-facing WordPress deployment should treat this as a prompt-patch priority rather than a deferred maintenance item, given that the admin interaction requirement is a plausible event during routine link-log review. The stored nature of the payload means a single successful delivery persists until the log entry is cleared.

Exploit ScenarioDerived

An attacker posts a WordPress comment using a URL pointing to an HTTP server under their control as the comment author URL. When a site administrator encounters this entry in the Broken Link Checker link log and performs the standard dismiss-and-recheck action, the plugin's HTTP crawler fetches the URL and the attacker's server responds with an HTTP redirect to a destination URL containing an embedded JavaScript payload; the plugin stores this redirect destination verbatim in the link log without sanitization. The next time any administrator opens the link log page, the stored payload executes in their browser session, enabling session token theft, credential harvesting, or admin-level actions on the WordPress site.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 02, 2026

Stored XSS in the Broken Link Checker WordPress plugin (versions ≤ 2.4.13) allows unauthenticated attackers to inject persistent JavaScript into the WordPress admin link log via a multi-hop redirect-based payload delivery mechanism. The plugin's HTTP checker follows attacker-controlled redirects and stores the redirect destination URL verbatim in the link log without sanitization; the admin table printer then renders this unsanitized content to any administrator who views the link log. No public exploit has been identified at time of analysis, and a vendor-released patch is confirmed available as version 2.4.13.1.

RemediationAI

Update the Broken Link Checker plugin to version 2.4.13.1 or later, which addresses the insufficient input sanitization and output escaping identified in this CVE. The fix is confirmed via the WordPress plugin repository changeset comparing tag 2.4.13 to tag 2.4.13.1 at plugins.trac.wordpress.org/changeset. The Wordfence advisory with full technical detail is available at https://www.wordfence.com/threat-intel/vulnerabilities/id/ec96308f-3944-48c5-94be-b1555c0830b7. If immediate patching is not feasible, a practical compensating control is to suspend use of the dismiss-and-recheck workflow on external links from untrusted or unfamiliar sources until the plugin is updated; this eliminates the specific admin-interaction trigger required for exploitation. Disabling the plugin entirely removes the attack surface completely but loses all link-checking functionality. Restricting WordPress comment submission to authenticated users would prevent unauthenticated attackers from injecting the initial malicious comment author URL.

Affected VersionsENISA

Broken Link Checker 0 ≤2.4.13

Affected Packages

euvd broken_link_checker no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The Broken Link Checker plugin for WordPress by WPMU Dev (CPE: cpe:2.3:a:wpmudev:broken_link_checker) processes URLs from multiple sources, including the WordPress comment author URL field. The root cause is CWE-79 (Stored Cross-Site Scripting) arising from two distinct failures in the legacy codebase: (1) the HTTP checker module (http.php lines 291 and 432) follows HTTP redirects and records the redirect destination URL without validating or sanitizing its content before storage; (2) the admin table printer (table-printer.php line 658) and link storage layer (links.php line 485) render stored URLs back to the admin browser without adequate output escaping. The comment container module (comment.php line 228) provides the initial unauthenticated injection vector via the WordPress comment author URL field. The redirect-chain delivery mechanism is significant: the attacker does not inject the payload directly into the database - instead the plugin itself fetches the payload from the attacker's server and stores it, bypassing input validation that might otherwise fire at comment-submission time.

Know when Broken Link Checker gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (Wordfence) PRIMARY 7.2 HIGH
AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N
vuln.today AI 6.1 MEDIUM

UI:R corrects the submitted UI:N; admin must actively trigger dismiss-and-recheck for payload delivery; unauthenticated comment submission keeps PR:N.

3.1 AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:A/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N

Primary rating from Vendor (Wordfence).

CVSS VectorVendor: Wordfence

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Changed
Confidentiality
Low
Integrity
Low
Availability
None

DescriptionCVE.org

The Broken Link Checker plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Comment Author URL / Link Log in all versions up to, and including, 2.4.13 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. Exploitation requires an administrator to perform the plugin's standard dismiss-and-recheck workflow on a link submitted by the attacker via the WordPress comment author URL field, after which the attacker's HTTP server issues a redirect to a URL containing an HTML/JavaScript payload that is stored verbatim in the link log.

Executive ViewAI

Why It Matters

The Broken Link Checker WordPress plugin (versions ≤2.4.13) contains a stored cross-site scripting vulnerability that allows unauthenticated attackers to inject persistent malicious code into administrative link logs. When administrators view these logs, the injected script executes with administrator privileges, potentially enabling account compromise and website defacement. While no public exploit has been identified, immediate patching to version 2.4.13.1 or later is required to mitigate this attack surface.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.3%
Top 77% exploitable
Prevalence
High
popular WordPress plugin with large active install base
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

CVE-2019-16521 MEDIUM POC
6.1 Oct 16

The broken-link-checker plugin through 1.11.8 for WordPress (aka Broken Link Checker) is susceptible to Reflected XSS du

CVE-2023-23737 CRITICAL
9.8 Oct 12

Unauth. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable, no authentication required, low

CVE-2019-17207 MEDIUM POC
5.4 Oct 18

A reflected XSS vulnerability was found in includes/admin/table-printer.php in the broken-link-checker (aka Broken Link

CVE-2022-3922 MEDIUM POC
4.8 Dec 28

The Broken Link Checker WordPress plugin before 1.11.20 does not sanitise and escape some of its settings, which could a

CVE-2024-10903 MEDIUM POC
4.7 Dec 26

The Broken Link Checker WordPress plugin before 2.4.2 does not validate a the link URLs before making a request to them,

CVE-2026-39466 HIGH
7.6 Apr 08

Blind SQL injection in WPMU DEV Broken Link Checker WordPress plugin versions ≤2.4.7 allows authenticated high-privilege

CVE-2022-2438 HIGH
7.2 Sep 06

The Broken Link Checker plugin for WordPress is vulnerable to deserialization of untrusted input via the '$log_file' val

CVE-2026-96562 MEDIUM
6.5 Oct 16

Arbitrary shortcode execution in the WordPress Broken Link Checker plugin (all versions up to and including 2.4.14.1) al

CVE-2015-5057 MEDIUM
6.1 Aug 18

Cross-site scripting (XSS) vulnerability exists in the Wordpress admin panel when the Broken Link Checker plugin before

CVE-2024-25592 MEDIUM
5.9 Mar 15

Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability in WPMU DEV Broken Li

CVE-2026-84772 MEDIUM
5.5 Sep 02

Server-Side Request Forgery in the Broken Link Checker WordPress plugin (WPMU Dev, versions ≤ 2.4.14) allows high-privil

References

Advisories & patches
ADVISORY https://nvd.nist.gov/vuln/detail/CVE-2026-75528 ADVISORY https://vuldb.com/vuln/398051 REF https://plugins.trac.wordpress.org/browser/broken-link-checker/tags/2.4.13/legacy/includes/admin/table-printer.php#L658 REF https://plugins.trac.wordpress.org/browser/broken-link-checker/tags/2.4.13/legacy/includes/links.php#L485 REF https://plugins.trac.wordpress.org/browser/broken-link-checker/tags/2.4.13/legacy/modules/checkers/http.php#L291 REF https://plugins.trac.wordpress.org/browser/broken-link-checker/tags/2.4.13/legacy/modules/checkers/http.php#L432 REF https://plugins.trac.wordpress.org/browser/broken-link-checker/tags/2.4.13/legacy/modules/containers/comment.php#L228 REF https://plugins.trac.wordpress.org/browser/broken-link-checker/tags/2.4.8/legacy/includes/admin/table-printer.php#L658 REF https://plugins.trac.wordpress.org/browser/broken-link-checker/tags/2.4.8/legacy/includes/links.php#L485 REF https://plugins.trac.wordpress.org/browser/broken-link-checker/tags/2.4.8/legacy/modules/checkers/http.php#L291 REF https://plugins.trac.wordpress.org/browser/broken-link-checker/tags/2.4.8/legacy/modules/checkers/http.php#L432 REF https://plugins.trac.wordpress.org/browser/broken-link-checker/tags/2.4.8/legacy/modules/containers/comment.php#L228 REF https://plugins.trac.wordpress.org/changeset?old_path=%2Fbroken-link-checker/tags/2.4.13&new_path=%2Fbroken-link-checker/tags/2.4.13.1 REF https://plugins.trac.wordpress.org/changeset?reponame=&new=3662785%40broken-link-checker%2Ftags%2F2.4.13.1&old=3644192%40broken-link-checker%2Ftags%2F2.4.13 REF https://www.wordfence.com/threat-intel/vulnerabilities/id/ec96308f-3944-48c5-94be-b1555c0830b7?source=cve

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy