/

CVE-2026-111215

Severity:

HIGH RISK

(7.2)

OS Command Injection (CWE-78) in pfSense Wireless

CVE-2026-111215

Analyzed

Vulnerability type

Category:

OS Command Injection

CWE:

CWE-78

Impact:

Privileged Command Execution

Severity:

HIGH RISK

(7.2)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

An OS command injection vulnerability in Netgate pfSense CE allows certain authenticated users to place shell metacharacters in a wireless parent interface name. If the crafted value is processed by the wireless editing or interface assignment workflow, commands may execute with root privileges.

An OS command injection vulnerability in Netgate pfSense CE allows certain authenticated users to place shell metacharacters in a wireless parent interface name. If the crafted value is processed by the wireless editing or interface assignment workflow, commands may execute with root privileges.

Affected context

The vulnerability occurs in pfSense CE deployments through version 2.9.0 where wireless interface configuration accepts user-controlled parent interface names. It is relevant when a user has limited Wireless Edit or Interface Assignments privileges and the affected workflow passes the value to a shell command without adequate neutralization.

The vulnerability occurs in pfSense CE deployments through version 2.9.0 where wireless interface configuration accepts user-controlled parent interface names. It is relevant when a user has limited Wireless Edit or Interface Assignments privileges and the affected workflow passes the value to a shell command without adequate neutralization.

Exploit preconditions

  • Attack surface: Wireless interface editing and interface assignment

functionality

  • Required access: An authenticated account with Wireless Edit or Interface

Assignments privileges

  • Trigger point: Processing a supplied wireless parent interface name through

the affected configuration workflow

  • Why exploitation is possible: The interface name is interpolated into an

ifconfig shell command without sufficient escaping or argument separation,

allowing shell syntax to alter command execution

  • Attack surface: Wireless interface editing and interface assignment

functionality

  • Required access: An authenticated account with Wireless Edit or Interface

Assignments privileges

  • Trigger point: Processing a supplied wireless parent interface name through

the affected configuration workflow

  • Why exploitation is possible: The interface name is interpolated into an

ifconfig shell command without sufficient escaping or argument separation,

allowing shell syntax to alter command execution

Why this happens

The underlying flaw is the construction of a shell command from an attacker-influenced interface name without treating that value as strictly data. When the value reaches a command interpreter, shell metacharacters can change the command structure and cause unintended operations. This behavior maps to CWE-78, Improper Neutralization of Special Elements used in an OS Command.

The underlying flaw is the construction of a shell command from an attacker-influenced interface name without treating that value as strictly data. When the value reaches a command interpreter, shell metacharacters can change the command structure and cause unintended operations. This behavior maps to CWE-78, Improper Neutralization of Special Elements used in an OS Command.

Potential impact

  • An attacker may execute arbitrary operating system commands
  • Commands could run with root privileges
  • The firewall configuration and network security controls could be altered
  • Sensitive system or network information could be exposed
  • The appliance could be used for persistence or further network access
  • An attacker may execute arbitrary operating system commands
  • Commands could run with root privileges
  • The firewall configuration and network security controls could be altered
  • Sensitive system or network information could be exposed
  • The appliance could be used for persistence or further network access

General mitigation guidance

Mitigation generally focuses on removing shell interpretation from configuration workflows and reducing the trust placed in interface names. Secure-by-default patterns include invoking operating-system operations through structured APIs or fixed argument arrays rather than shell command concatenation, validating interface identifiers against a strict allowlist, and rejecting unexpected characters or formats. Privileges for wireless and interface-management roles should be narrowly scoped, and administrative workflows should separate configuration parsing from privileged execution. Where shell use cannot be avoided, context-appropriate argument handling and narrowly defined command wrappers can reduce exposure.

Mitigation generally focuses on removing shell interpretation from configuration workflows and reducing the trust placed in interface names. Secure-by-default patterns include invoking operating-system operations through structured APIs or fixed argument arrays rather than shell command concatenation, validating interface identifiers against a strict allowlist, and rejecting unexpected characters or formats. Privileges for wireless and interface-management roles should be narrowly scoped, and administrative workflows should separate configuration parsing from privileged execution. Where shell use cannot be avoided, context-appropriate argument handling and narrowly defined command wrappers can reduce exposure.

How teams detect issues like this

Detection can include static analysis for string interpolation, formatting, or concatenation of request parameters into shell commands, especially calls involving ifconfig or equivalent system utilities. Code review should examine privileged handlers for interface-name validation, shell invocation, and authorization boundaries. Runtime monitoring can flag unexpected process creation by management services and unusual changes to interface configuration. CI policies and automated security review tools may help enforce bans on shell construction from untrusted input.

Detection can include static analysis for string interpolation, formatting, or concatenation of request parameters into shell commands, especially calls involving ifconfig or equivalent system utilities. Code review should examine privileged handlers for interface-name validation, shell invocation, and authorization boundaries. Runtime monitoring can flag unexpected process creation by management services and unusual changes to interface configuration. CI policies and automated security review tools may help enforce bans on shell construction from untrusted input.

Sources

SourceLink
abraxaslabs.techabraxaslabs.tech/research/pfsense-ce-leftovers
github.comgithub.com/abraxas/pfsense-assign-if-add
github.comgithub.com/abraxas/pfsense-wireless-clone
github.comgithub.com/pfsense/pfsense/blob/9363ac5b8651a1c7a333180425ce7719070f95f9/src/etc/inc/interfaces.inc#L3370
github.comgithub.com/pfsense/pfsense/blob/9363ac5b8651a1c7a333180425ce7719070f95f9/src/usr/local/www/interfaces_assign.php#L187
github.comgithub.com/pfsense/pfsense/blob/9363ac5b8651a1c7a333180425ce7719070f95f9/src/usr/local/www/interfaces_wireless_edit.php#L77
vulncheck.comvulncheck.com/advisories/netgate-pfsense-ce-through-2.9.0-os-command-injection-via-wireless-parent-interface

Frequently asked

questions

It may be exploitable through the pfSense administrative web interface when

that interface is reachable and the attacker has the required authenticated

privileges. It is not an unauthenticated network-service issue.

The attacker needs an authenticated account with limited Wireless Edit or

Interface Assignments permissions, along with access to the relevant

configuration workflow.

Avoid passing user-controlled interface names through a shell. Use structured

system APIs or fixed argument execution, combined with strict allowlist

validation and narrowly scoped privileges.

Treat all administrative form values as untrusted, prohibit command

concatenation in privileged code, apply security-focused code review, and

monitor management services for unexpected child processes.

It may be exploitable through the pfSense administrative web interface when

that interface is reachable and the attacker has the required authenticated

privileges. It is not an unauthenticated network-service issue.

The attacker needs an authenticated account with limited Wireless Edit or

Interface Assignments permissions, along with access to the relevant

configuration workflow.

Avoid passing user-controlled interface names through a shell. Use structured

system APIs or fixed argument execution, combined with strict allowlist

validation and narrowly scoped privileges.

Treat all administrative form values as untrusted, prohibit command

concatenation in privileged code, apply security-focused code review, and

monitor management services for unexpected child processes.

Find out what's already
exploitable in your codebase.