☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Netgate logo [ WEBSITE ] [ VENDOR STATS ]
CVSS: 6.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N 🐛 CWE-79
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-78902

CVE-2026-78902 Cross-Site Scripting in Netgate
📅 PUBLISHED: 2026-09-25 00:00 UTC 🔄 UPDATED: 2026-10-11 22:59 UTC
[ ZERO-DAY / UNPATCHED ] [ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.30%
👁️
0.30% probability
7.6× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1059.007
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: United States License: Commercial
VULNERABLE: UNKNOWN / CHECK VENDOR
CVSS VECTOR BREAKDOWN 6.1
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: R User Interaction Required
S: C Scope Changed
C: L Confidentiality Low
I: L Integrity Low
A: N Availability None
6.1
THREAT LEVEL
INTEL SOURCES NVD EPSS HOW WE SCORE →
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-78902 is a cross-site scripting (XSS) vulnerability in Netgate pfSense 26.03.1-RELEASE, reachable through the pfBlockerNG package, which the NVD description states allows an attacker to execute arbitrary code. Organizations running pfSense 26.03.1-RELEASE with the pfBlockerNG package installed are exposed; pfSense is commonly the perimeter firewall and internet gateway, so a compromise has outsized blast radius. No CVSS score, EPSS score, CWE assignment, public proof-of-concept, Nuclei template, or vendor patch is currently available for this CVE, so impact must be assessed from the vulnerability class and the deployment context.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Technical Analysis

The authoritative description available for this CVE is: "Cross Site Scripting vulnerability in Netgate pfSense 26.03.1-RELEASE allows an attacker to execute arbitrary code via the pfBlockerNG package." That statement drives every technical claim in this section; no additional code-level detail (input field, parameter name, source file, endpoint, or encoding routine) is provided by the CNA title, NVD description, or the structured data set, and none will be invented here.

The vulnerability class is CWE-79, cross-site scripting. In an XSS flaw, attacker-controlled input is reflected or stored and then rendered into a browser context without adequate output encoding or contextual escaping, so the injected content is interpreted as active markup or script rather than inert data. The description names the pfBlockerNG package as the vector. pfBlockerNG is an add-on package for pfSense that provides IP and DNS blocklist management and a web administration surface within the firewall's management plane. Because the package renders administrative data in a privileged browser session, an XSS flaw there sits directly adjacent to the firewall's administrative trust boundary.

The "execute arbitrary code" phrasing in the description is significant but must be read precisely. In a pure client-side XSS context, code execution occurs in the victim's browser session: injected JavaScript executes with the origin and privileges of the pfSense/pfBlockerNG management interface. The description does not state that server-side remote code execution on the pfSense host is achieved, nor does it identify a specific chained sink that converts browser script execution into operating-system command execution. Analysts should treat the demonstrated primitive as browser-context script execution in an authenticated administrative session unless and until a vendor advisory or researcher publication documents a server-side escalation path.

Two attack surfaces are implied by the class and the named package: (1) data that pfBlockerNG ingests from external feeds (blocklists, DNS blocklist entries, and similar feed content) and subsequently renders in the management UI, which would constitute stored XSS if unescaped at render time; and (2) request parameters handled by the package's administrative pages that are echoed back into responses, which would constitute reflected XSS. The available data does not specify which of these applies, or whether both do. Practitioners should verify both surfaces during assessment.

The confidentiality, integrity, and availability impact of a successful exploit derives from the privilege of the session in which the script executes. pfSense administrators hold configuration authority over firewall rules, NAT, VPN, DNS resolver and forwarder behavior, certificate material, and user accounts. Script running in that session can act with the same authority as the administrator's browser.

Exploitation Scenarios

No public proof-of-concept, exploit code, or Nuclei template exists for CVE-2026-78902; the chain below is inferred strictly from the stated vulnerability class and the named component, and no function names, endpoints, parameters, or file paths are asserted beyond what appears in the NVD description.

  1. Reconnaissance and target identification. An attacker identifies internet-facing or internally reachable pfSense management interfaces running 26.03.1-RELEASE with the pfBlockerNG package present. Passive fingerprinting via search engines (Shodan/Censys-style queries for pfSense login pages) or active probing of the management port can identify candidate hosts. The description does not state whether the vulnerable surface requires authentication, so both authenticated-administrator and pre-authentication scenarios must be considered during testing.

  2. Triggering the flaw class. The attacker introduces script-bearing content into the pfBlockerNG data flow. In a stored-XSS variant, this means content that pfBlockerNG ingests — for example, entries delivered through blocklist or feed processing — is persisted and later rendered unescaped when an administrator views the relevant interface. In a reflected-XSS variant, the attacker crafts a request to an administrative page whose parameter values are echoed into the response without encoding, and delivers that request to a logged-in administrator. Either path results in attacker-controlled markup being served within the pfSense management origin.

  3. Payload and execution method. At the vulnerability-class level, the payload is client-side script embedded in the injected content. It executes when a victim with a live pfSense administrative session loads the affected page. Because the script runs in the management origin, it inherits that origin's session context and can issue same-origin requests against the administrative interface.

  4. Post-exploitation impact. Per the description's "execute arbitrary code" language, the attacker achieves code execution in the victim's administrative browser session. From that position, the attacker can perform administrative actions available to the session (for example, altering firewall policy or reading configuration data), exfiltrate data reachable from the management interface, or use the firewall's trusted position for further network access. Server-side code execution on the appliance is not established by the available data and should not be assumed without corroborating evidence.

Impact Assessment

No CVSS score or vector is published for this CVE, and this report does not assign one from external sources. Impact must therefore be reasoned from context. pfSense is typically deployed as the network perimeter firewall, VPN concentrator, and DNS control point; pfBlockerNG operates inside that management plane. Successful exploitation therefore has potential impact at the highest tier of the affected organization's network trust hierarchy. The plausible CIA profile of the flaw class and deployment is high across confidentiality (administrative data and configuration exposure), integrity (firewall, NAT, DNS, and VPN policy manipulation), and availability (disabling or misconfiguring filtering), with scope change because the vulnerable component can affect resources beyond its own security authority. Exploitation of a stored variant requires only that an administrator view the poisoned interface; a reflected variant requires user interaction such as following a crafted link while authenticated. The blast radius extends to every network segment the firewall protects or routes, and to any VPN or DNS service it terminates. Because EPSS has not scored this CVE and CISA KEV does not list it, there is currently no quantitative or observed-exploitation signal; the risk derives from asset criticality and the absence of a patch.

Detection Guidance

Sigma Rule

title: Potential pfBlockerNG XSS Exploitation Attempts Against pfSense Management Interface
id: 9f3b1c2e-7a44-4d8e-9b21-5c6e0f1a2b33
status: experimental
description: Detects script-bearing payloads or encoded script markers in requests directed at the pfSense / pfBlockerNG management interface, consistent with CVE-2026-78902.
references:
  - https://nvd.nist.gov/vuln/detail/CVE-2026-78902
author: valtersit.com
date: 2026-01-01
logsource:
  category: webserver
detection:
  selection_method:
    cs-method:
      - 'GET'
      - 'POST'
  selection_target:
    cs-uri-stem|contains:
      - 'pfblockerng'
      - 'pfBlockerNG'
  selection_payload:
    cs-uri-query|contains:
      - '<script'
      - '%3Cscript'
      - 'javascript:'
      - 'onerror='
      - 'onload='
      - '<svg'
      - '<img'
  condition: selection_method and selection_target and selection_payload
falsepositives:
  - Administrative users pasting blocklist content containing HTML into the pfBlockerNG UI
  - Security scanners and fuzzing tools
level: high
tags:
  - attack.t1190
  - cve.2026.78902

YARA Rule

rule CVE_2026_78902_pfBlockerNG_XSS
{
    meta:
        description = "Detects script-injection markers in web logs or captured HTTP data associated with pfSense pfBlockerNG (CVE-2026-78902)"
        author = "valtersit.com"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-78902"
        date = "2026-01-01"
        severity = "high"

    strings:
        $pkg1 = "pfBlockerNG" ascii nocase
        $pkg2 = "pfblockerng" ascii nocase
        $xss1 = "<script" ascii nocase
        $xss2 = "%3Cscript" ascii nocase
        $xss3 = "javascript:" ascii nocase
        $xss4 = "onerror=" ascii nocase
        $xss5 = "<svg" ascii nocase

    condition:
        filesize < 2MB and
        ($pkg1 or $pkg2) and
        any of ($xss*)
}

Suricata IDS Rule

alert http any any -> any any (msg:"CVE-2026-78902 Possible pfBlockerNG XSS Attempt in pfSense Management Request"; flow:established,to_server; http.uri; content:"pfblockerng"; nocase; http.uri; content:"<script"; nocase; http.uri; content:"%3Cscript"; nocase; http.header; content:"Referer"; nocase; classtype:web-application-attack; reference:cve,2026-78902; reference:url,nvd.nist.gov/vuln/detail/CVE-2026-78902; sid:202678902; rev:1;)

alert http any any -> any any (msg:"CVE-2026-78902 pfBlockerNG XSS Encoding Bypass Attempt"; flow:established,to_server; http.uri; content:"pfblockerng"; nocase; pcre:"/(onerror|onload|javascript):/i"; classtype:web-application-attack; reference:cve,2026-78902; sid:202678903; rev:1;)

Elastic Detection

sequence by source.ip with maxspan=5m
  [ network where http.request.method in ("GET","POST") and
      stringContains(http.request.uri, "pfblockerng") ]
  [ network where http.request.method in ("GET","POST") and
      ( stringContains(http.request.uri, "<script") or
        stringContains(http.request.uri, "%3Cscript") or
        stringContains(http.request.uri, "javascript:") or
        stringContains(http.request.uri, "onerror=") ) ]

Splunk SPL Query

index=web OR index=proxy (sourcetype=access_combined OR sourcetype=pan:traffic OR sourcetype=stream:http)
| eval uri_lower = lower(uri)
| where (match(uri_lower, "pfblockerng"))
| where (match(uri_lower, "<script") OR match(uri_lower, "%3cscript") OR match(uri_lower, "javascript:") OR match(uri_lower, "onerror=") OR match(uri_lower, "onload="))
| stats count min(_time) as first_seen max(_time) as last_seen values(uri) as uris by src, dest, status
| sort - count

Wazuh OSSEC Rule

<group name="web,pfsense,pfblockerng,cve-2026-78902,">
  <rule id="100902" level="10">
    <decoded_as>web-accesslog</decoded_as>
    <match>pfblockerng</match>
    <regex type="pcre2">(?i)(%3Cscript|<script|javascript:|onerror=|onload=)</regex>
    <description>CVE-2026-78902: Possible pfBlockerNG XSS attempt against pfSense management interface from $(srcip)</description>
    <mitre>
      <id>T1190</id>
    </mitre>
    <group>cve_2026_78902,web_attack,</group>
  </rule>
</group>

Mitigation & Patch Guidance

Patch confidence: 0/4 (UNPATCHED — no patch evidence from any tracked source).

Immediate mitigations:

  1. Restrict the pfSense management interface and pfBlockerNG administration pages to trusted administrative networks only, or to VPN-only access. This removes the exposure path for remote attackers and sharply limits who can deliver a reflected payload.
  2. Do not browse to pfSense/pfBlockerNG administrative pages while authenticated and simultaneously navigating untrusted sites or opening untrusted links; enforce this as operational policy for firewall administrators.
  3. Review pfBlockerNG feed and blocklist configuration for sources that ingest untrusted content, and validate or temporarily curtail feed ingestion until the vendor clarifies the vulnerable surface.
  4. Treat the pfBlockerNG package itself as a removable exposure: if the package's function is not operationally required, removing or disabling it eliminates the named attack vector.
  5. Increase logging and retention for the firewall's web management interface and monitor for the detection patterns in this report.
  6. Enforce strong session hygiene for administrative users, including short idle timeouts and session termination after use, to reduce the window in which a live administrative session can be abused.

Patch/upgrade steps:

  1. There is currently no vendor patch, vendor workaround, or fixed version published in any tracked source for CVE-2026-78902. Do not assume a fix exists.
  2. Monitor the Netgate pfSense security advisories and release notes directly, and track the pfBlockerNG package repository for a corrected package revision.
  3. When a fixed version or package revision is released, validate it in a non-production instance, then schedule an upgrade with a documented rollback plan and configuration backup.
  4. After upgrading, re-verify both reflected and stored rendering paths in the pfBlockerNG interface rather than assuming the fix covers both.

Long-term hardening:

  1. Enforce content security policy headers and output-encoding controls where the platform permits, and require input validation and contextual escaping in any custom pfBlockerNG or pfSense modifications.
  2. Adopt an out-of-band management architecture so firewall administration never shares a browsing context with untrusted web content.
  3. Maintain an inventory of installed pfSense packages and subscribe to per-package security notifications, since add-on packages inherit the firewall's trust level.
  4. Incorporate the Sigma, YARA, Suricata, Elastic, Splunk, and Wazuh detections above into continuous monitoring, and periodically test them against known encoding bypasses.
  5. Reassess risk if EPSS begins scoring this CVE or if it is added to CISA KEV.

References

  1. NVD — CVE-2026-78902: https://nvd.nist.gov/vuln/detail/CVE-2026-78902
  2. Netgate pfSense security advisories and release notes: https://www.netgate.com/ (monitor official advisory channel for CVE-2026-78902)
  3. pfBlockerNG package repository and changelog: https://github.com/pfBlockerNG/pfBlockerNG (monitor for corrected package revisions)
  4. OWASP — Cross Site Scripting (XSS) prevention guidance: https://owasp.org/www-community/attacks/xss/
  5. CISA Known Exploited Vulnerabilities catalog (CVE-2026-78902 not currently listed): https://www.cisa.gov/known-exploited-vulnerabilities-catalog

No threat actor campaigns, exploit-in-the-wild evidence, public PoC, or CISA KEV entry are associated with CVE-2026-78902 at the time of writing.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

product:pfSense
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-78902/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.