Skip to main content

OPNsense EUVDEUVD-2026-102135

| CVE-2026-58394 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-10-15 GitHub_M
5.2
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as certmanager-privileged user
  2. Delivery
    Store HTML payload in certificate description
  3. Exploit
    Admin opens System Settings Administration
  4. Execution
    Script executes in admin's session
  5. Impact
    Hijack session and perform admin actions

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires a deployment with more than one user account: the attacker must hold the page-system-certmanager privilege to create/edit a certificate and inject HTML metacharacters into its description field. Exploitation only triggers when a separate, typically higher-privileged user navigates to the System Settings > Administration page, which renders the unescaped descr in the SSL Certificate selector (required user interaction, UI:R). Limited to OPNsense core versions prior to 26.1.11; single-admin deployments or those not provisioning the certmanager privilege to untrusted users are not realistically exposed. Authentication is required (CVSS PR:H confirms a high-privilege account).

Impact

This is a stored (persistent) cross-site scripting flaw (CWE-79) rated CVSS 5.2 (Medium). The vector CVSS:3.1/AV:N/AC:L/PR:H/UI:R is self-limiting on two independent axes: PR:H means the attacker must already hold the page-system-certmanager privilege (a high-trust role that can manage certificates), and UI:R means a second victim user must actively open System Settings > Administration for the payload to fire. No EPSS score, KEV listing, SSVC decision data, or public POC was supplied, so there is no public exploit identified at time of analysis and no evidence of active exploitation - the only external signals are the vendor GHSA advisory and the fix commits. The practical risk is therefore a privilege-escalation/lateral-trust-abuse primitive: a lower-trust certificate operator can target a higher-privileged administrator, which matters because OPNsense is a firewall and admin-session compromise is high-value. Note a nuance to verify: the vendor assigns C:H while classic stored XSS impact is typically C:L/I:L - the C:H likely reflects that script running in an admin's authenticated firewall session can read sensitive configuration, so the elevated confidentiality rating is defensible but worth confirming against the GHSA. Overall this is a genuine but conditional issue (insider/multi-operator deployments), not an internet-facing mass-exploitation priority.

Exploit ScenarioDerived

In an OPNsense deployment with multiple operators, a user holding only the page-system-certmanager privilege creates or edits a certificate and embeds HTML/JavaScript metacharacters in the certificate description field. When a firewall administrator later opens System Settings > Administration, the SSL Certificate selector renders the unescaped descr value and the attacker's script executes in the administrator's authenticated session. No public exploit code was provided, but the one-line fix commit (adding legacy_html_escape_form_data($a_cert)) makes the injection point trivially reproducible.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 15, 2026

Stored cross-site scripting in OPNsense core prior to 26.1.11 lets a user who holds the page-system-certmanager privilege inject HTML metacharacters into a certificate description field, and that markup is later rendered unescaped in the SSL Certificate selector on System Settings > Administration, executing in the browser session of any other user who opens that page. Exploitation requires a multi-user deployment and deliberate victim interaction (CVSS 3.1 base 5.2, Medium; vendor vector AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:L/A:N, with the independent assessment treating the impact as scope-changing and limited to low confidentiality/integrity), and the attacker must already be authenticated with a high-privilege account. No confirmed active exploitation (not in CISA KEV) and no public exploit code identified at time of analysis; the flaw is resolved by upgrading to OPNsense 26.1.11.

RemediationAI

Vendor-released patch: OPNsense 26.1.11 - upgrade the core package to that version (or later) via the normal OPNsense update mechanism, which is the only complete fix and requires no configuration changes. If immediate upgrade is not possible, the upstream fixes can be applied as a manual edit: add legacy_html_escape_form_data($a_cert); before the certificate selector is rendered in src/www/system_advanced_admin.php, matching commit 9d0a590e9c49f4374a5539929b366123f63bc9eb (companion change adcb02f8f68071e636bf9660b2cb8d0229f34674); the trade-off is that manual patching of a firewall GUI is unsupported, can be overwritten by the next update, and must be re-verified after every upgrade. As a risk-reduction measure until patching, restrict the page-system-certmanager privilege to genuinely trusted administrators and avoid delegating certificate management to semi-trusted or non-administrative accounts - this eliminates the injection path entirely but removes those users' ability to create or edit certificates. Note that single-admin deployments are not realistically exposed, since the same account would both plant and trigger the payload, and blocking remote access to the web GUI while the patch is pending reduces the attack surface but impedes legitimate administration. Additional detail is available in advisory GHSA-8pgr-x852-qx4j.

Affected VersionsENISA

core < 26.1.11

Affected Packages

euvd core fix: 26.1.11

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

OPNsense is a FreeBSD-based firewall and routing platform whose management GUI is implemented as PHP pages; the affected file is src/www/system_advanced_admin.php. The page loads the certificate list into the PHP array $a_cert and then renders each certificate's descr value as an option label in the SSL Certificate selector, but the fix diff shows that $a_cert was never passed through the framework's legacy_html_escape_form_data() helper before output - only that single escaping call was added (commit 9d0a590e9c49f4374a5539929b366123f63bc9eb, with a companion commit adcb02f8f68071e636bf9660b2cb8d0229f34674). Because the certificate description field accepts HTML metacharacters and is persisted, the omission produces a stored/persistent cross-site scripting condition classed as CWE-79; the payload is stored via the certificate manager and detonated in another user's session when the Administration page is viewed. The CPE cpe:2.3:a:opnsense:core:*:*:*:*:*:*:*:* confirms the issue is in the OPNsense core package across releases before 26.1.11 rather than in a plugin, and the assessed scope change reflects that script executes with the privileges of the victim's administration session rather than the attacker's.

Know when Opnsense 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 (GitHub_M) PRIMARY 5.2 MEDIUM
AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:L/A:N
vuln.today AI 4.8 MEDIUM

Stored XSS requires the certmanager privilege (PR:H) and a victim opening the page (UI:R); payload executes in the victim's browser, a different security scope (S:C), with limited C/I and no availability impact.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
Low
Availability
None

Lifecycle Timeline

1
Patch available
Oct 15, 2026 - 17:17 EUVD

DescriptionCVE.org

OPNsense is a FreeBSD based firewall and routing platform. Prior to version 26.1.11, src/www/system_advanced_admin.php reads certificate records into $a_cert but omits that array from legacy_html_escape_form_data() before rendering each certificate descr value in the SSL Certificate selector. The certificate description accepts HTML metacharacters, allowing a user with the page-system-certmanager privilege to store markup that executes when another user opens System Settings Administration. This issue is fixed in version 26.1.11.

Threat Intelligence Overview

EPSS Score
0.2%
Top 86% exploitable
Prevalence
Medium
popular open-source firewall, common in SMB/homelab, not ubiquitous
Data Quality
5 sources
Confidence: Medium

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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

CVE-2023-39004 CRITICAL POC
9.8 Aug 09

Insecure permissions in the configuration directory (/conf/) of OPNsense Community Edition before 23.7 and Business Edit

CVE-2023-27152 CRITICAL POC
9.8 Oct 23

DECISO OPNsense 23.1 does not impose rate limits for authentication, allowing attackers to perform a brute-force attack

CVE-2023-39008 CRITICAL POC
9.8 Aug 09

A command injection vulnerability in the component /api/cron/settings/setJob/ of OPNsense Community Edition before 23.7

CVE-2023-39001 CRITICAL POC
9.8 Aug 09

A command injection vulnerability in the component diag_backup.php of OPNsense Community Edition before 23.7 and Busines

CVE-2023-39007 CRITICAL POC
9.6 Aug 09

/ui/cron/item/open in the Cron component of OPNsense Community Edition before 23.7 and Business Edition before 23.4.2 al

CVE-2023-39003 HIGH POC
7.5 Aug 09

OPNsense Community Edition before 23.7 and Business Edition before 23.4.2 was discovered to contain insecure permissions

CVE-2023-39005 HIGH POC
7.5 Aug 09

Insecure permissions exist for configd.socket in OPNsense Community Edition before 23.7 and Business Edition before 23.4

CVE-2023-38997 HIGH POC
7.2 Aug 09

A directory traversal vulnerability in the Captive Portal templates of OPNsense Community Edition before 23.7 and Busine

CVE-2023-38999 MEDIUM POC
6.5 Aug 09

A Cross-Site Request Forgery (CSRF) in the System Halt API (/system/halt) of OPNsense Community Edition before 23.7 and

CVE-2019-25373 MEDIUM POC
6.4 Feb 15

OPNsense 19.1 contains a stored cross-site scripting vulnerability that allows authenticated attackers to inject malicio

CVE-2019-25369 MEDIUM POC
6.4 Feb 15

OPNsense 19.1 contains a stored cross-site scripting vulnerability in the system_advanced_sysctl.php endpoint that allow

CVE-2019-25372 MEDIUM POC
6.1 Feb 15

OPNsense 19.1 contains a reflected cross-site scripting vulnerability that allows unauthenticated attackers to inject ma

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