---
id: "CVE-2026-120114"
kind: "vulnerability"
aliases: ["CVE-2026-120114"]
title: "WordPress Debug Log Manager plugin: stored XSS via unauthenticated error logging"
severity: "high"
cvss: 7.2
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["debug-log-manager", "package", "self-hosted", "wordpress"]
not_affected_if: ["debug-logging-disabled", "js-error-logging-disabled", "plugin-not-installed"]
published_at: "2026-10-31T10:16:38+00:00"
first_seen_at: "2026-10-31T10:34:56+00:00"
updated_at: "2026-10-31T10:35:54+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-120114", "first_seen_at": "2026-10-31T10:34:56+00:00"}]
---

# WordPress Debug Log Manager plugin: stored XSS via unauthenticated error logging

The Debug Log Manager plugin for WordPress up to and including 2.5.2 fails to sanitize the message and pageUrl values it stores from JavaScript error reports. An unauthenticated attacker can plant scripts that run in the browser of any user who opens the affected admin log page.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed version of the Debug Log Manager plugin in the WordPress admin plugin list, or `wp plugin get debug-log-manager --field=version`
- Check whether debug logging with JS error logging is enabled in the plugin settings

## Fix

- Debug Log Manager: a fixed version is not stated in the sources; move to a release later than `2.5.2` once the vendor publishes one

## Timeline

- 2026-10-31T10:34:56+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-120114

## From the sources

The Debug Log Manager – Conveniently Monitor and Inspect Errors plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'message (and pageUrl)' parameter in all versions up to, and including, 2.5.2 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. Successful exploitation requires that the site administrator has debug logging enabled with JS error logging active, and that the attacker can obtain the publicly emitted dlmVars.jsErrorLogging nonce — which is broadcast on every frontend page — to pass the nonce check on the unauthenticated endpoint.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
