---
id: CVE-2026-56127
title: >-
  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
summary: >-
  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 …
severity: medium
cvss: 5.4
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N'
cwe:
  - CWE-79
published: '2026-09-03'
updated: '2026-09-09'
sourceUpdated: '2026-09-09T20:41:07.123'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-56127'
references:
  - url: 'https://docs.netgate.com/downloads/pfSense-SA-26_10.webgui.asc'
    label: disclosure@vulncheck.com
  - url: 'https://docs.netgate.com/pfsense/en/latest/releases/2-9-0.html'
    label: disclosure@vulncheck.com
  - url: 'https://docs.netgate.com/pfsense/en/latest/releases/26-07.html'
    label: disclosure@vulncheck.com
  - url: >-
      https://www.vulncheck.com/advisories/pfsense-plus-ce-stored-xss-via-firewall-rules-edit-php
    label: disclosure@vulncheck.com
tags:
  - nvd
epss: 0.01052
epssPercentile: 0.62845
ingestedAt: '2026-09-09T21:22:45.565Z'
---

## Overview

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.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
