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

CVE-2026-87681

CVE-2026-87681 Privilege Escalation in Brocade
📅 PUBLISHED: 2026-10-08 00:00 UTC 🔄 UPDATED: 2026-10-13 15:52 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.17%
👁️
0.17% probability
4.3× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1068
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: USA License: Commercial
VULNERABLE: Fabric Operating System
CVSS VECTOR BREAKDOWN 6.3
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: L Privileges Required Low
UI: N User Interaction None
S: U Scope Unchanged
C: L Confidentiality Low
I: L Integrity Low
A: L Availability Low
6.3
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-87681 is an access control bypass vulnerability in the Role-Based Access Control (RBAC) validation engine of Brocade Fabric OS versions before 10.0.1. The flaw causes the RBAC engine to incorrectly categorize non-standard action opcodes during permission checks, allowing an authenticated user holding only read-only management privileges to execute restricted administrative operations. This impacts SAN fabric management infrastructure where Brocade Fabric OS is deployed, and the primary consequence is privilege escalation from read-only to full administrative control over the fabric without requiring credentials beyond those already legitimately held.

⚡ 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

Brocade Fabric OS is the operating system embedded in Brocade Fibre Channel switches and directors used to build storage area network (SAN) fabrics. Management operations on these devices are performed over management protocols (for example the FOS command shell and the fabric management interfaces), and every operation is subject to authorization by the RBAC engine. RBAC assigns roles to accounts — a read-only role is intended to permit monitoring and inspection commands while denying configuration and administrative commands.

The reported defect is in the permission-check logic itself, not in the authentication layer. According to the NVD description, when the RBAC engine processes certain management protocol operations, it "incorrectly categorizes non-standard action opcodes during permission checks." In other words, the mapping between an incoming operation's action opcode and the permission class used for authorization is wrong for opcodes that fall outside the expected/standard set. An operation submitted with such a non-standard action opcode is evaluated against the wrong permission class, and an authenticated read-only user is therefore authorized to perform what should be a restricted administrative operation.

Key technical characteristics, derived strictly from the available description:

  • Root cause class: Improper authorization / missing or incorrect authorization check (CWE-269, Improper Privilege Management). The decision point is the RBAC permission check, and the failure mode is misclassification of the action opcode rather than a failure of authentication.
  • Preconditions: The attacker must already be authenticated with a valid account that holds read-only management privileges. This is not an unauthenticated bypass; it is a privilege escalation/authorization bypass.
  • Trigger: Submission of a management protocol operation whose action opcode is non-standard, i.e., not in the set the RBAC engine correctly maps to a permission class. Because the engine mis-categorizes that opcode, the check that would normally reject the operation for a read-only role does not.
  • Result: Execution of restricted administrative operations by an account that should be limited to read-only actions.

No specific opcode values, protocol message formats, command names, function names, or code paths are provided in the available intelligence. Those details would require access to the vendor advisory or the patched firmware for differential analysis, and are not fabricated here. The vulnerability class (authorization bypass via faulty permission-class mapping) is nonetheless well understood and directly actionable.

The listed CVSS vector is a derived, worst-case network-vector assessment: network attack vector (AV:N), low attack complexity (AC:L), low privileges required (PR:L, consistent with an authenticated read-only account), no user interaction (UI:N), scope unchanged (S:U), and high confidentiality, integrity, and availability impact (C:H/I:H/A:H), reflecting that full administrative control over a fabric switch can be leveraged to read fabric configuration, alter zoning and fabric parameters, and disrupt fabric availability. Note that the NVD-supplied CVSS score is N/A; the vector above is a projection of the described impact and should be replaced with the vendor's published score when available.

Exploitation Scenarios

No public PoC or exploit code is known (POC_STATUS: None), and no Nuclei template or Metasploit module is tracked. The attack chain below is inferred at the vulnerability-class level from the NVD description; specific opcodes and protocol message formats are not published and are not invented here.

  1. Reconnaissance / target identification. The attacker identifies reachable Brocade Fabric OS management interfaces on the network — for example via switch management IP addresses, the FOS CLI over SSH, or fabric management services exposed on management VLANs. Version identification (Fabric OS before 10.0.1) determines exposure. Because these devices are typically on management networks, the realistic adversary is an insider, a contractor, or an external attacker who has already obtained a foothold with network access to the management plane.

  2. Initial access with a low-privilege account. The attacker authenticates using a legitimate but low-privileged account assigned a read-only management role. Such accounts are common: monitoring integrations, NOC read-only accounts, and audit accounts are routinely provisioned read-only. No separate vulnerability is needed to obtain this account; the CVE assumes it already exists.

  3. Triggering the specific flaw class. While authenticated as the read-only user, the attacker issues a management protocol operation that carries a non-standard action opcode — that is, an operation crafted so that its action opcode does not match the format the RBAC engine expects to map to a permission class. The RBAC engine's permission check then categorizes the operation incorrectly and authorizes it, when a correctly categorized operation of the same intent would have been denied. The exploitation primitive is therefore "authorization decision confusion": the same restricted administrative action succeeds when dressed with a non-standard opcode and fails when issued with the standard one.

  4. Execution of restricted administrative operations. Once the check is bypassed, the attacker can perform operations that the read-only role should never permit. Because the vulnerability permits bypass of access controls generally (not a single named command), the attacker's ceiling is the set of administrative operations the RBAC engine fails to correctly gate — which, per the description, includes "restricted administrative operations." The practical impact is full administrative capability over the fabric from a read-only account.

  5. Post-exploitation impact. With administrative control, an attacker can modify fabric-level configuration and security-relevant settings, alter or remove zoning that enforces workload isolation, reconfigure fabric parameters, and potentially disrupt SAN availability. In SAN environments, such changes can sever storage connectivity for attached hosts, enabling data availability impact and, depending on zoning and host configurations, potential access to storage visible to other initiators. The attacker can also create or modify accounts, making the action persistent and harder to attribute. Because this is a silent authorization bypass, it may leave no authentication failure in logs — only success entries for operations that the account was not intended to be authorized for.

No public exploit code is available; the steps above are the logical attack chain implied by the vulnerability class (authorization bypass via opcode misclassification) and the stated precondition of an authenticated read-only account.

Impact Assessment

  • Confidentiality (High): A read-only account that bypasses RBAC can reach administrative operations that expose fabric configuration, zoning definitions, and other management data beyond the read-only boundary. High impact is consistent with full administrative visibility.
  • Integrity (High): Restricted administrative operations become executable by a read-only principal, permitting unauthorized configuration changes to the fabric.
  • Availability (High): Fabric reconfiguration by an unauthorized party can disrupt access to storage for hosts, and repeated or destructive changes could impact the SAN's availability.
  • Scope (Unchanged): The vulnerable component is the RBAC engine on the same device; the immediate security authority affected is that device's management plane. The downstream effect on attached hosts and storage is a consequence of the device's role, not a scope change per the vector.
  • Attack vector (Network, Low complexity, Low privileges): The attacker must have network reach to a management interface and an authenticated low-privileged account; no user interaction is required.

Business impact: Organizations running Brocade SAN fabrics on Fabric OS before 10.0.1 are exposed. The blast radius of a single compromised switch or director is the fabric it belongs to. In multi-switch fabrics, administrative compromise of one switch can be used as a pivot to expand control. Because SAN fabrics underpin mission-critical storage, integrity and availability impacts can translate directly into application outages and potential data-exposure risk. The most serious operational property of this flaw is its stealth: it converts a trusted read-only monitoring account into an administrative one without any failed authentication event, complicating attribution and detection.

Affected systems: Brocade Fabric OS versions before 10.0.1 on supported switch and director hardware. The affected-version list supplied with this advisory is empty; version applicability should be confirmed against the vendor advisory.

Detection Guidance

Effective detection for CWE-269 authorization bypass is primarily behavioral and log-based. Because the bypass presents as a successful restricted operation performed by a low-privileged account, detections should focus on: (a) administrative operations executed by accounts mapped to read-only roles, and (b) anomalous management traffic, particularly operations carrying unusual or non-standard opcodes. There is no file-based signature for this flaw, so the YARA rule below targets firmware artifacts and audit strings rather than a memory exploit; it should be treated as a hunting aid, not a high-fidelity indicator.

Sigma Rule

title: Brocade Fabric OS RBAC Access Control Bypass - Read-Only Account Performing Admin Operations
id: 8f2a4c17-6b3d-4e91-9c2a-1f7d5e0a3b64
status: experimental
description: Detects successful administrative operations on Brocade Fabric OS management interfaces performed by accounts that should be read-only, consistent with RBAC opcode misclassification (CVE-2026-87681).
references:
  - https://nvd.nist.gov/vuln/detail/CVE-2026-87681
author: valtersit.com
date: 2026/01/01
tags:
  - attack.privilege_escalation
  - attack.t1068
  - cve.2026-87681
logsource:
  product: brocade
  service: fabric_os
detection:
  selection_role:
    user_role|contains:
      - 'read-only'
      - 'readonly'
      - 'monitor'
  selection_action:
    action|contains:
      - 'zonecreate'
      - 'zonedelete'
      - 'cfgcreate'
      - 'cfgdelete'
      - 'cfgmodify'
      - 'switchdisable'
      - 'configure'
      - 'userconfig'
      - 'passwd'
      - 'fabricshow'
      - 'admin'
  condition: selection_role and selection_action
falsepositives:
  - Legitimate role changes where an account was promoted and the audit log reflects the old role string
  - Break-glass administrative accounts temporarily mapped to a read-only alias
level: high

YARA Rule

rule CVE_2026_87681_Brocade_FOS_RBAC_Bypass
{
    meta:
        description = "Hunting rule for Brocade Fabric OS firmware/audit artifacts related to RBAC access control bypass (CVE-2026-87681)"
        author = "valtersit.com"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-87681"
        date = "2026-01-01"
        severity = "high"

    strings:
        $fos1 = "Fabric OS" ascii wide nocase
        $fos2 = "fabricos" ascii wide nocase
        $rbac = "rbac" ascii wide nocase
        $rbac2 = "role-based access" ascii wide nocase
        $perm = "permission" ascii wide nocase
        $opcode = "opcode" ascii wide nocase
        $admin = "restricted administrative" ascii wide nocase

    condition:
        uint16(0) == 0x5A4D or
        (
            filesize < 50MB and
            any of ($fos*) and
            any of ($rbac*) and
            (1 of ($perm, $opcode, $admin))
        )
}

Suricata IDS Rule

alert tcp $HOME_NET any -> $HOME_NET any (msg:"CVE-2026-87681 Possible Brocade Fabric OS RBAC Bypass - Management Operation Anomaly"; flow:established,to_server; dsize:>0; content:"|0b|"; offset:0; depth:1; threshold:type both, track by_src, count 10, seconds 60; classtype:attempted-admin; reference:cve,2026-87681; reference:url,nvd.nist.gov/vuln/detail/CVE-2026-87681; metadata:affected_product Brocade_Fabric_OS, attack_target Networking_Equipment, created_at 2026_01_01, cve CVE_2026_87681, signature_severity Major, tag cve_2026_87681; sid:202687681; rev:1;)

Note: action opcodes and protocol framing for Brocade Fabric OS management operations are not published in the available data, so this rule flags management-session volume anomalies rather than a confirmed opcode byte value. Tune the content/offset values against traffic captures from your environment; do not treat the byte match as authoritative.

Elastic Detection

sequence by process.entity_id with maxspan=5m
  [ authentication where event.action == "authentication_success"
      and user.roles : ("read-only", "readonly", "monitor") ]
  [ network where event.action : ("zone_change", "config_change", "switch_config_change")
      and destination.port in (22, 443, 23) ]

If Brocade FOS audit logs are ingested directly, replace the second sequence entry with a query matching successful administrative operations (event.outcome == "success") carrying a read-only user.roles value from the first entry.

Splunk SPL Query

index=network OR index=brocade sourcetype=brocade:fos
| eval role=coalesce(user_role, role, "unknown")
| eval op=lower(coalesce(action, command, operation, ""))
| where match(role, "(?i)read.?only|monitor")
| where match(op, "zone|cfg|switchdisable|configure|userconfig|passwd|admin|fabric")
| stats count min(_time) as first_seen max(_time) as last_seen values(op) as operations by src, user
| where count >= 1
| convert ctime(first_seen) ctime(last_seen)
| sort - count

Wazuh OSSEC Rule

<group name="brocade,fabric_os,">
  <rule id="2026810" level="10">
    <decoded_as>json</decoded_as>
    <field name="event.type">brocade_auth</field>
    <field name="event.outcome">success</field>
    <description>CVE-2026-87681: Successful Brocade Fabric OS authentication with read-only role</description>
    <options>no_full_log</options>
  </rule>

  <rule id="2026811" level="13">
    <if_sid>2026810</if_sid>
    <field name="user.roles">read-only|readonly|monitor</field>
    <field name="event.action">zone.*|cfg.*|switchdisable|configure|userconfig|passwd</field>
    <description>CVE-2026-87681: Read-only Brocade account executed restricted administrative operation (possible RBAC access control bypass)</description>
    <mitre>
      <id>T1068</id>
    </mitre>
  </rule>
</group>

Mitigation & Patch Guidance

Patch confidence: 0/4 (UNPATCHED — no patch evidence from any tracked source). No vendor fix, workaround, or affected-version data was supplied with this intelligence. Treat the following as risk-management guidance pending vendor confirmation; verify against the Brocade advisory before acting.

1) Immediate mitigations (compensating controls while unpatched):

  • Restrict management-plane access to Brocade Fabric OS devices with network segmentation and firewall ACLs so that only dedicated jump hosts/management VLANs can reach the management interfaces.
  • Enforce least privilege and account hygiene: minimize the number of read-only accounts, avoid shared monitoring accounts, and audit which principals hold read-only roles that could serve as a stepping stone.
  • Where possible, apply command/role restrictions and out-of-band monitoring of administrative actions performed by low-privileged accounts — the primary detection opportunity for this bypass is a successful admin operation attributed to a read-only principal.
  • Use centralized, tamper-evident logging (for example forwarding FOS audit logs to a SIEM via the Wazuh/Elastic/Splunk logic above) so attempted bypasses that succeed are captured.
  • Increase alerting priority on any successful administrative operation performed by an account mapped to a read-only role.

2) Patch/upgrade steps:

  • Per the NVD description, Brocade Fabric OS 10.0.1 is the version in which the RBAC validation engine is fixed. Upgrade affected switches and directors to Fabric OS 10.0.1 or later, following the vendor's supported upgrade path and SAN best practices (staged rollout, fabric-by-fabric, with redundancy preserved).
  • Because patch confidence is 0/4 and no vendor advisory URL was supplied, confirm the fixed release and any dependent firmware requirements directly with the Brocade support portal before scheduling maintenance.
  • After upgrade, verify that the RBAC engine correctly categorizes non-standard action opcodes by re-running any internal authorization test cases against a test switch.

3) Long-term hardening:

  • Governance: maintain an inventory of Fabric OS versions across the fleet and a defined patch cadence for the management plane.
  • Privilege minimization: periodically review and recertify role assignments; eliminate standing read-only accounts that no longer have a business need; prefer time-bound, just-in-time administrative access.
  • Monitoring: keep the detection rules in this report tuned and maintained, particularly behavioral rules that flag administrative operations executed by low-privileged roles.
  • Architectural defense: treat SAN management networks as a distinct trust zone with no direct internet exposure, and monitor for anomalous management-session patterns.

References

Threat actor / exploitation-in-the-wild evidence: none reported. CISA KEV status is NO, EPSS is 0.00172 (approximately the 6.1st percentile of exploited CVEs), and no public PoC, Nuclei template, or exploit code is tracked for CVE-2026-87681.

👁️ 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:"Brocade"
title:"Brocade"
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-87681/ · 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.