Description
DebugKit provides a debugging toolbar for CakePHP applications. Prior to 4.10.3 and 5.2.4, the DebugKit MailPreview feature in src/Controller/MailPreviewController.php accepts a route-controlled previewName value in findPreview and passes the resolved class from App::className() to constructor execution without rejecting namespace separators or verifying that the class extends DebugKit\Mailer\MailPreview. An attacker able to access DebugKit while debug mode is enabled and the request hostname is local or allowlisted can select an unintended application class through the mail-preview preview route, resulting in arbitrary constructor execution and limited disclosure of application information. This issue is fixed in versions 4.10.3 and 5.2.4.
Published: 2026-08-26
Score: 4.3 Medium
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability lies in DebugKit’s MailPreview feature, which accepts a preview name from a route and resolves it to a class name without rejecting namespace separators or checking that it extends the expected mail preview interface. This unsafe reflection allows an attacker to instantiate any class that can be resolved by the framework, leading to arbitrary constructor execution and the potential exposure of application data or configuration. The vulnerability is classified as CWE‑470, indicating code execution through unsafe dynamic code loading.

Affected Systems

Vulnerable releases are all CakePHP DebugKit versions prior to 4.10.3 and 5.2.4, which expose the MailPreview controller to unchecked class resolution. Any application using DebugKit in debug mode, with access to the /debugkit/mail-preview route from a local or allowlisted host, is affected.

Risk and Exploitability

The CVSS score of 4.3 indicates moderate severity, and the absence of an EPSS rating suggests limited known exploitation activity. The exploit requires debug mode to be enabled and the attacker to reach the application from a host that is allowed to trigger debug features, so it is not a public‑Internet remote execution risk but remains significant for developers running DebugKit locally or in internal environments. Because it is not listed in the KEV catalog, there are no known active exploits in the wild reported by that authority.

Generated by OpenCVE AI on August 26, 2026 at 18:00 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade DebugKit to at least 4.10.3 or 5.2.4 where the constructor resolution is properly validated.
  • Disable DebugKit or debug mode in production or non‑local environments to prevent exposure of the mail‑preview route.
  • Restrict access to the /debugkit/mail-preview route by configuring host‑based filtering or a firewall rule so that only trusted local or allowlisted hosts can reach it.

Generated by OpenCVE AI on August 26, 2026 at 18:00 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-p46m-g734-vpc4 cakephp/debug_kit: MailPreview contains unsafe reflection
History

Wed, 26 Aug 2026 16:00:00 +0000

Type Values Removed Values Added
Description DebugKit provides a debugging toolbar for CakePHP applications. Prior to 4.10.3 and 5.2.4, the DebugKit MailPreview feature in src/Controller/MailPreviewController.php accepts a route-controlled previewName value in findPreview and passes the resolved class from App::className() to constructor execution without rejecting namespace separators or verifying that the class extends DebugKit\Mailer\MailPreview. An attacker able to access DebugKit while debug mode is enabled and the request hostname is local or allowlisted can select an unintended application class through the mail-preview preview route, resulting in arbitrary constructor execution and limited disclosure of application information. This issue is fixed in versions 4.10.3 and 5.2.4.
Title DebugKit: MailPreview contains unsafe reflection
Weaknesses CWE-470
References
Metrics cvssV3_1

{'score': 4.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-26T15:30:23.966Z

Reserved: 2026-06-15T19:45:23.541Z

Link: CVE-2026-54614

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-26T16:16:28.040

Modified: 2026-08-26T16:16:28.040

Link: CVE-2026-54614

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-26T18:15:08Z

Weaknesses
  • CWE-470

    Use of Externally-Controlled Input to Select Classes or Code ('Unsafe Reflection')