Skip to main content

pfSense CE CVE-2026-111224

| EUVDEUVD-2026-102336 HIGH
OS Command Injection (CWE-78)
2026-10-15 VulnCheck
7.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Authenticate to OpenVPN via RADIUS/LDAP
  2. Delivery
    Supply username with shell metacharacters
  3. Exploit
    Break out of eval'd pfctl anchor name
  4. Execution
    Commands run as root on firewall
  5. Impact
    Full firewall compromise

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: (1) a valid VPN account authenticated through a RADIUS or LDAP backend (PR:L - the attacker must control their own username value), and (2) the pfSense OpenVPN server must invoke the openvpn.connect_async.sh connect/disconnect script that eval's the pfctl anchor name. The injection is delivered via a username containing single quotes and shell metacharacters that break out of the eval'd string. Limiting factors that reduce real-world exposure: valid credentials are mandatory (not unauthenticated), the specific OpenVPN connect-script and external-auth (RADIUS/LDAP) configuration must be in use (reflected as AT:P/AC:H), and only pfSense CE through 2.9.0 is affected.

Impact

This is a credible high-priority issue for any pfSense CE deployment that uses OpenVPN with external authentication. The CVSS 4.0 vector (AV:N/AC:H/AT:P/PR:L/UI:N) describes a network-reachable flaw requiring low privileges and a present attack requirement, with full confidentiality, integrity and availability impact on the vulnerable system (VC:H/VI:H/VA:H) - consistent with the description's claim of command execution as root. The real escalation value is high because a low-privileged VPN user gains root on the firewall itself. A public exploit exists (abraxas/pfsense-ovpn-connect-eval) and the finding was reported by VulnCheck, which raises practical exploitability above a theoretical issue. Tempering factors: AC:H plus AT:P indicate this is NOT trivially universal - it depends on a specific deployment (OpenVPN using the connect/disconnect script with RADIUS or LDAP auth), and PR:L means the attacker needs valid VPN credentials. No CISA KEV listing and no EPSS score were provided in the input, so there is NO evidence of active in-the-wild exploitation at this time - the POC indicates capability, not observed attacks. Net: real priority for affected configurations (public POC + root impact + exposed VPN endpoints), but not a drop-everything mass-exploitation event absent KEV/EPSS signals.

Exploit ScenarioDerived

An attacker with valid but low-privileged VPN credentials (e.g., a legitimate RADIUS/LDAP user, or a compromised account) connects to the pfSense OpenVPN server using a username containing single quotes and shell metacharacters. When openvpn.connect_async.sh eval's the pfctl anchor name on connect or disconnect, the injected payload executes as root. A public proof-of-concept exploit is available, lowering the skill needed to reproduce the attack.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
1 public PoC No patch listed yet 5.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

Authenticated VPN users can execute arbitrary commands as root on pfSense CE through 2.9.0 by exploiting an OS command injection in the OpenVPN connect/disconnect script, openvpn.connect_async.sh. The attack requires a valid VPN account authenticated via RADIUS or LDAP and a username containing single quotes and shell metacharacters that break out of an eval'd pfctl anchor name. Publicly available exploit code exists (reported by VulnCheck), though no active exploitation has been confirmed by CISA KEV. This is a credible high-priority issue for any pfSense CE deployment that uses OpenVPN with external authentication.

RemediationAI

No vendor-released patch has been identified at time of analysis. Until a fix is available, administrators should restrict VPN usernames to a safe character set by configuring RADIUS or LDAP backends to reject usernames containing single quotes, backticks, semicolons, ampersands, pipes, dollar signs, and other shell metacharacters; this prevents the injection payload from reaching the eval. If per-user firewall rules are not required, disabling the OpenVPN connect/disconnect script invocation removes the vulnerable code path, but this will also remove dynamic pf anchor rules and may break client-specific firewall behavior. Alternatively, switching to certificate-only authentication or a local authentication backend that does not allow arbitrary username input can eliminate the attack vector, though this may impact existing deployments. Monitor OpenVPN logs for usernames containing suspicious characters and audit pfctl anchor names for unexpected entries. Apply network segmentation to limit the impact of a compromised VPN account. For updates, monitor the VulnCheck advisory at https://www.vulncheck.com/advisories/netgate-pfsense-ce-through-2.9.0-os-command-injection-via-openvpn-connect-async-sh. A public exploit is available at https://github.com/abraxas/pfsense-ovpn-connect-eval.

Affected VersionsENISA

pfSense CE 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 vulnerability is a classic OS command injection (CWE-78) in the pfSense CE OpenVPN client connect/disconnect script located at /usr/local/sbin/openvpn.connect_async.sh (lines 83-114). The script uses shell eval to construct a pfctl anchor name from the authenticated username. When an attacker supplies a username containing a single quote and shell metacharacters, the eval'd string is broken out of, allowing arbitrary shell commands to run as root. The attack surface requires the OpenVPN server to be configured with the connect_async.sh script (common for per-user firewall rules) and external authentication via RADIUS or LDAP, where the username value is attacker-controlled. The CPE string cpe:2.3:a:netgate:pfsense_ce:*:*:*:*:*:*:*:* confirms all pfSense CE versions up to and including 2.9.0 are in scope. The vulnerability is remotely exploitable over the network (AV:N) but requires low privileges (PR:L) and is rated high complexity (AC:H) due to the specific configuration and injection prerequisites.

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 7.7 HIGH
CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.5 HIGH

Network-reachable VPN connect with valid low-priv credentials (PR:L); AC:H reflects the required RADIUS/LDAP connect-script configuration; root command execution yields full C/I/A on the firewall.

3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:H/AT:P/PR:L/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
High
Attack Requirements
Present
Privileges Required
Low
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 through 2.9.0 contains an OS command injection vulnerability in the OpenVPN openvpn.connect_async.sh script that allows authenticated VPN users to execute commands as root via crafted usernames. Attackers authenticated through RADIUS or LDAP can use usernames containing single quotes and shell metacharacters to break out of the eval'd pfctl anchor name on connect or disconnect.

Technical POC Analysis

OS command injection (CWE-78) in pfSense CE's OpenVPN client-connect/disconnect glue script openvpn.connectasync.sh, pinned by the researcher at commit 9363ac5b8651a1c7a333180425ce7719070f95f9 (2.9.0…

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 deployments through version 2.9.0 that use OpenVPN with RADIUS or LDAP authentication are exposed to a high-severity command injection that allows a user with valid VPN credentials to execute arbitrary commands as root on the firewall. This could enable an attacker to compromise the perimeter device, leading to potential network-wide lateral movement, data exposure, or downtime. Leadership should care because publicly available exploit code exists and no vendor-released patch identified at time of analysis, making timely mitigation critical for organizations relying on pfSense CE as their edge firewall.

Business Impact: High
Compensating Controls

Interim mitigations include restricting VPN access to trusted accounts, enforcing username character allowlists that exclude single quotes and shell metacharacters, disabling the OpenVPN connect/disconnect script if not essential, and monitoring for exploitation attempts. No vendor-released patch identified at time of analysis.

Threat Intelligence Overview

EPSS Score
5.4%
Top 7% exploitable
Prevalence
High
pfSense CE is among the most widely deployed open-source firewalls
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 5.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

63
Low Medium High Critical
KEV: 0
EPSS: +5
CVSS: +38
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-111229 HIGH POC
8.6 Oct 15

Command injection in pfSense CE 2.7.0 through 2.9.0 allows authenticated users who hold only the Captive Portal HA privi

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