Skip to main content

pfSense CE EUVDEUVD-2026-102341

| CVE-2026-111229 HIGH
OS Command Injection (CWE-78)
2026-10-15 VulnCheck
8.6
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Authenticate with Captive Portal HA privilege
  2. Delivery
    Set backwardsyncip to attacker XMLRPC server
  3. Exploit
    Server returns connected_users with shell metacharacters
  4. Execution
    pfctl command executes injected payload
  5. Impact
    Arbitrary command execution as root

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK

2 techniques across 1 tactic: 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 three concrete conditions: (1) the attacker must possess the specific 'Captive Portal HA' WebGUI privilege (authenticated, per CVSS PR:H - this is not anonymous access); (2) the Captive Portal high-availability sync feature must be in use so that backwardsyncip and the XMLRPC connected_users exchange are active; and (3) the attacker must be able to point backwardsyncip at an XMLRPC server they control (or otherwise influence the synced connected_users ip/mac fields). The exploitable sink is captiveportal_load_pfctl passing unescaped ip/mac values into a pfctl shell command. Limiting factors: the required Captive Portal HA privilege is a non-default, specifically granted permission; the HA sync deployment mode is not universal; and successful injection depends on the firewall processing attacker-controlled sync data. Affected builds are pfSense CE 2.7.0 through 2.9.0.

Impact

This is a credible but privilege-gated priority rather than a mass-exploitation emergency. The CVSS 4.0 vector (AV:N/AC:L/PR:H/UI:N, VC/VI/VA all High, base 8.6) and CWE-78 confirm network-reachable, low-complexity command injection yielding full root compromise of the firewall. However, PR:H is the decisive limiter: exploitation requires an account already holding the Captive Portal HA privilege, so this is fundamentally a privilege-escalation-to-root path for an existing semi-trusted operator, not an anonymous internet attack. Publicly available exploit code exists (POC from VulnCheck/abraxaslabs), which raises operational risk and lowers the barrier to weaponization, but there is NO CISA KEV listing and NO EPSS score provided in the input, so there is no evidence of active exploitation - the exploitation signal is 'POC available' only, which must not be conflated with in-the-wild use. Net: high technical impact (root on a perimeter firewall) tempered by a non-default feature requirement and a privileged-account precondition. Treat as a high-priority patch for any pfSense CE deployment that uses Captive Portal HA, and as lower urgency where that feature and privilege are not provisioned.

Exploit ScenarioDerived

An attacker who holds the Captive Portal HA privilege on a pfSense CE firewall points the backwardsyncip setting at an XMLRPC server they control. That server returns a connected_users list whose ip or mac fields embed shell metacharacters, which captiveportal_load_pfctl passes unescaped into a pfctl shell command, executing attacker commands as root. A public proof-of-concept exists (github.com/abraxas/pfsense-cp-ha-pfctl), reducing the effort needed to reproduce the attack; CVSS AC:L indicates reliable, low-complexity triggering once the privilege is held.

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

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

Alert me

AnalysisAIv1 – Oct 15, 2026

Command injection in pfSense CE 2.7.0 through 2.9.0 allows authenticated users who hold only the Captive Portal HA privilege to execute commands as root by manipulating backwardsyncip to point at an attacker-controlled XMLRPC server and returning connected_users entries with shell metacharacters in ip or mac fields. Exploitation is privilege-gated: it requires the specific Captive Portal HA WebGUI permission, use of Captive Portal high-availability sync, and the ability to influence the synced connected_users data. Publicly available exploit code exists, but no CISA KEV confirmed active exploitation is identified; this is a credible privilege-gated priority rather than a mass-exploitation emergency.

RemediationAI

No vendor-released patch identified at time of analysis. Until a fixed pfSense CE release is available, remove the Captive Portal HA privilege from all users who do not strictly require it, because that privilege is the gate for this attack; the trade-off is that legitimate Captive Portal HA administration may be disrupted. If Captive Portal high-availability sync is not required, disable it to remove exposure; the trade-off is loss of captive portal session synchronization between HA peers. If HA sync must remain enabled, restrict backwardsyncip to a fixed, trusted peer IP and harden the XMLRPC peer endpoint so it cannot be replaced by an attacker-controlled server; the trade-off is reduced flexibility if legitimate HA peer addresses change. Also restrict WebGUI management access to trusted networks and monitor for anomalous pfctl command invocations or unexpected HA sync peer changes. Consult the VulnCheck advisory at https://www.vulncheck.com/advisories/netgate-pfsense-ce-2.7.0-through-2.9.0-command-injection-via-captive-portal-ha-sync and the public exploit reference at https://github.com/abraxas/pfsense-cp-ha-pfctl for further detection and mitigation details.

Affected VersionsENISA

pfSense CE 2.7.0 ≤2.9.0

Affected Packages

euvd pfsense_ce 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 issue is OS command injection (CWE-78) in the PHP-based pfSense CE captive portal high-availability sync path. The affected CPE pattern is cpe:2.3:a:netgate:pfsense_ce:*:*:*:*:*:*:*:* for Netgate pfSense CE. In services_captiveportal_hasync.php, the backwardsyncip setting is used to contact an XMLRPC peer and process returned connected_users data. That data, specifically the ip or mac fields, is later passed without shell escaping by captiveportal_load_pfctl into a pfctl shell command in captiveportal.inc. A user with the Captive Portal HA privilege can redirect backwardsyncip to a malicious XMLRPC server that returns connected_users entries containing shell metacharacters, causing command execution as root on the firewall. The provided CVSS 4.0 vector is AV:N/AC:L/AT:N/PR:H/UI:N with high confidentiality, integrity, and availability impact, and the independent assessment maps to CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H, reinforcing that the attack is remote but requires high privileges and specific HA sync conditions.

Know when Pfsense Ce 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 (VulnCheck) PRIMARY 8.6 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.2 HIGH

Network-reachable XMLRPC sync with reliable injection (AV:N/AC:L); the Captive Portal HA privilege is required so PR:H and UI:N; root command execution gives C/I/A High.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
High
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

pfSense CE 2.7.0 through 2.9.0 contains a command injection vulnerability in services_captiveportal_hasync.php that allows users with only the Captive Portal HA privilege to execute commands as root. Attackers can set backwardsyncip to a malicious XMLRPC server returning connected_users with shell metacharacters in ip or mac fields, which captiveportal_load_pfctl passes unescaped to a pfctl shell command.

Technical POC Analysis

Note on evidence: the supplied source is the Abraxas Labs GitHub repository README for pfsense-cp-ha-pfctl.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Latest POC

1 public PoC link from github

Sign in to open the public PoC links collected for this CVE.

Executive ViewAI

Why It Matters

pfSense CE versions 2.7.0 through 2.9.0 contain a high-severity command injection flaw that could allow an attacker with the Captive Portal HA WebGUI privilege to execute commands as root on the firewall appliance. Successful exploitation could lead to full compromise of this critical perimeter device, potentially enabling network intrusions or data exfiltration. Publicly available exploit code exists, and organizations should prioritize mitigation given the device's role in network security.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations include disabling Captive Portal HA if not essential, restricting XMLRPC sync traffic to trusted internal servers, auditing and minimizing accounts with Captive Portal HA privilege, and monitoring logs for anomalous XMLRPC connections or shell metacharacters in connected_users data.

Threat Intelligence Overview

EPSS Score
6.4%
Top 6% exploitable
Prevalence
High
pfSense is among the most widely deployed open-source firewall platforms
Data Quality
6 sources
Confidence: High

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 Yes
EPSS 6.4%
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
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

69
Low Medium High Critical
KEV: 0
EPSS: +6
CVSS: +43
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

OS command injection occurs when an application passes unsanitized user input directly into system shell commands.

CVE-2023-48795 MEDIUM POC
5.9 Dec 18

The SSH transport protocol with certain OpenSSH extensions, found in OpenSSH before 9.6 and other products, allows remot

CVE-2026-111214 HIGH POC
8.6 Oct 15

OS command injection in Netgate pfSense CE 2.7.0 through 2.9.0 allows an authenticated web-interface user who holds the

CVE-2026-111224 HIGH POC
7.7 Oct 15

Authenticated VPN users can execute arbitrary commands as root on pfSense CE through 2.9.0 by exploiting an OS command i

CVE-2026-97730 HIGH POC
8.5 Sep 25

PHP code execution on Netgate pfSense Plus and pfSense CE firewalls can be achieved by an authenticated, highly privileg

CVE-2026-111231 HIGH POC
8.6 Oct 15

Authorization bypass in Netgate pfSense CE through 2.9.0 allows an authenticated WebGUI account that holds page privileg

CVE-2026-111226 HIGH POC
8.6 Oct 15

Command injection in Netgate pfSense CE 2.4.5 through 2.9.0 lets an authenticated WebGUI user holding the Advanced Admin

CVE-2026-111223 HIGH POC
8.6 Oct 15

Command injection in Netgate pfSense CE 2.7.0 through 2.9.0 lets an authenticated administrator who holds IPsec Mobile c

CVE-2026-111220 HIGH POC
8.6 Oct 15

Root command execution on pfSense CE through 2.9.0 is achievable by authenticated attackers holding the 'WebCfg - Interf

CVE-2026-111218 HIGH POC
8.6 Oct 15

OS command injection in Netgate pfSense CE 2.7.0 through 2.9.0 lets an authenticated web GUI user who holds the Traffic

CVE-2026-111217 HIGH POC
8.6 Oct 15

Command injection in Netgate pfSense CE through 2.9.0 allows an authenticated user with Virtual IP (CARP) edit privilege

CVE-2026-111216 HIGH POC
8.6 Oct 15

OS command injection in Netgate pfSense CE (through 2.9.0) allows remote attackers holding an authenticated web-GUI acco

CVE-2026-111215 HIGH POC
8.6 Oct 15

Command injection in Netgate pfSense CE through 2.9.0 allows remote authenticated users with limited 'Wireless Edit' or

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