Description
pfSense Plus before 26.07 and CE before 2.9.0 allow authenticated users with the Firewall: Rules: Edit privilege to inject arbitrary JavaScript via the descr parameter in /firewall_rules_edit.php. The firewall rule description is stored in the pfSense XML configuration with only backslash-escaping applied and no HTML sanitization, then rendered without encoding in the firewall log table in /status_logs_filter.php. The payload executes in the browser of any user with the Status: Logs: Firewall privilege who views the affected log entries.
Published: 2026-09-03
Score: 5.1 Medium
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

An authenticated user with the Firewall: Rules: Edit privilege can inject arbitrary JavaScript into the descr field of a firewall rule via firewall_rules_edit.php. The payload is stored in the system’s XML configuration using only backslash escaping and is rendered without encoding in the firewall log table displayed at /status_logs_filter.php. When a user with the Status: Logs: Firewall privilege views the affected log entries, the malicious script executes in their browser, potentially allowing session hijacking or other attacks.

Affected Systems

The flaw is present in Netgate’s pfSense CE versions earlier than 2.9.0 and in pfSense Plus versions earlier than 26.07. The vulnerability affects the pfSense web GUI component firewall_rules_edit.php and the log rendering page status_logs_filter.php.

Risk and Exploitability

The CVSS score of 5.1 indicates medium severity. No EPSS data is available, and the vulnerability is not listed in the CISA KEV catalog, suggesting it has not been widely exploited yet. However, exploitation only requires an authenticated session with specific firewall privileges and access to the log viewer, making the attack likely possible for privileged insiders. As the script runs in the client’s browser, the immediate impact is on the victim’s session and possibly on the network through console commands if the attacker can execute arbitrary code. The risk is moderate for environments where firewall rule editing and log viewing are combined under the same privilege scope.

Generated by OpenCVE AI on September 3, 2026 at 15:21 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to the latest supported versions: pfSense CE 2.9.0 or later, or pfSense Plus 26.07 or later, where the issue is fixed.
  • If an upgrade is not immediately possible, review the XML configuration and delete or edit any firewall rule descriptions that contain malicious JavaScript before they can be rendered in logs.
  • Restrict the “Status: Logs: Firewall” privilege to the minimum set of users who truly need it, reducing the number of individuals who could be impacted by the XSS attack.

Generated by OpenCVE AI on September 3, 2026 at 15:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 03 Sep 2026 15:45:00 +0000

Type Values Removed Values Added
First Time appeared Netgate
Netgate pfsense Ce
Netgate pfsense Plus
Vendors & Products Netgate
Netgate pfsense Ce
Netgate pfsense Plus

Thu, 03 Sep 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 03 Sep 2026 14:45:00 +0000

Type Values Removed Values Added
Description pfSense Plus before 26.07 and CE before 2.9.0 allow authenticated users with the Firewall: Rules: Edit privilege to inject arbitrary JavaScript via the descr parameter in /firewall_rules_edit.php. The firewall rule description is stored in the pfSense XML configuration with only backslash-escaping applied and no HTML sanitization, then rendered without encoding in the firewall log table in /status_logs_filter.php. The payload executes in the browser of any user with the Status: Logs: Firewall privilege who views the affected log entries.
Title pfSense Plus < 26.07 / CE < 2.9.0 Stored XSS via firewall_rules_edit.php
Weaknesses CWE-79
References
Metrics cvssV3_1

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

cvssV4_0

{'score': 5.1, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N'}


Subscriptions

Netgate Pfsense Ce Pfsense Plus
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-09-03T14:47:31.801Z

Reserved: 2026-06-18T19:15:10.651Z

Link: CVE-2026-56127

cve-icon Vulnrichment

Updated: 2026-09-03T14:47:24.311Z

cve-icon NVD

Status : Received

Published: 2026-09-03T15:17:30.793

Modified: 2026-09-03T15:17:30.793

Link: CVE-2026-56127

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-03T15:30:05Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')