CVE-2026-87662
Executive Summary
CVE-2026-87662 is an OS command injection vulnerability (CWE-78) in Brocade Fabric versions before 9.2.2d and 10.0.0 through 10.0.0a1. The firmware management daemon fails to sanitize shell metacharacters and control characters in upgrade request parameters (such as host or file path), allowing an attacker to inject and execute arbitrary shell commands with the daemon's elevated privileges. Successful exploitation grants full system compromise of the affected Fibre Channel fabric switch, enabling lateral movement across the storage area network (SAN) and potential disruption of critical storage infrastructure. No public PoC or exploit code is currently available, and the CVE remains unpatched per available evidence.
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.
No signup required
Technical Analysis
This vulnerability resides in the handling of upgrade request parameters within Brocade Fabric OS. The affected code path is triggered when the firmware management daemon processes upgrade requests that reference external resources via download protocols. User-supplied parameter strings — specifically fields such as the host or file path — are concatenated into system command strings without stripping shell metacharacters (e.g., ;, |, &, $(), backticks) or control characters. These command strings are then passed to a system shell interface for execution.
Because the daemon runs with elevated privileges (typically root on the underlying operating system), any injected command inherits those privileges. The core flaw is a classic OS command injection: the application constructs a shell command from untrusted input and invokes it through a shell interpreter rather than using a safe API or strict allow-list validation.
The attack surface is network-accessible, as the firmware upgrade functionality is exposed by the management daemon. No authentication bypass is described in the NVD entry; the attacker must be able to reach the upgrade request handler. Depending on configuration, this may require authenticated access to the management interface or may be reachable pre-authentication if the daemon processes requests before validating credentials — the NVD description does not specify the authentication state. The absence of sanitization for "control characters and shell metacharacters" confirms that both classic injection characters and less common control characters (e.g., newlines, carriage returns) are accepted, which can be used to bypass naive filtering in upstream components.
The affected versions are explicitly listed as "before 9.2.2d and 10.0.0 through 10.0.0a1," indicating that 9.2.2d and versions after 10.0.0a1 (if any) are expected to contain the fix, though no patch evidence is available from tracked sources. The CWE-78 classification aligns with the NVD description.
Exploitation Scenarios
No public PoC or exploit code is available for CVE-2026-87662; the following attack chain is inferred from the vulnerability class and the NVD description.
Reconnaissance/target identification: An attacker identifies a reachable Brocade Fabric OS management interface (e.g., via Shodan using
product:"Brocade Fabric"or by scanning internal networks for the management daemon's listening port). The attacker determines the firmware version through banner grabbing or unauthenticated version disclosure, confirming it falls within the affected range (< 9.2.2d or 10.0.0 through 10.0.0a1).Triggering the flaw class: The attacker crafts an upgrade request that includes a download protocol reference (e.g., HTTP, FTP, or TFTP) and supplies a malicious value in a parameter such as the host or file path field. Because the daemon concatenates this value into a system command string without sanitization, shell metacharacters and control characters are preserved.
Payload/execution method (vulnerability-class level): The attacker embeds shell metacharacters in the host or file path parameter to break out of the intended command context. For example, a value like
; <command> ;or| <command>would cause the shell to execute the injected command after (or instead of) the intended download command. The exact syntax depends on how the daemon constructs the command string, but the class of attack is standard OS command injection via shell metacharacter injection. The injected command executes with the firmware management daemon's elevated privileges.Post-exploitation impact: With arbitrary command execution as a highly privileged user, the attacker can read or modify fabric configuration, exfiltrate credentials and zoning data, install persistent backdoors, pivot to other switches in the SAN fabric, or disrupt storage availability by disabling ports or altering zoning. The elevated privileges allow full control of the switch operating system.
No public PoC available; attack chain is inferred from vulnerability class.
Impact Assessment
The impact is severe. Successful exploitation yields arbitrary command execution with elevated privileges on a critical network device that controls SAN fabric operations. This can lead to:
- Confidentiality: Full read access to fabric configuration, credentials, and potentially data traversing the SAN (CVSS C:H).
- Integrity: Ability to modify zoning, firmware, and system files (CVSS I:H).
- Availability: Ability to disrupt or disable the switch, causing storage outages (CVSS A:H).
- Blast radius: A compromised switch can serve as a pivot point to other fabric members, potentially affecting the entire SAN. Because Brocade Fabric OS is widely deployed in enterprise data centers, the blast radius extends to all systems relying on the compromised fabric for storage.
The CVSS vector (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) reflects a network-accessible, low-complexity attack requiring no privileges or user interaction, with high impact across all three CIA pillars. Note: the CVSS score is provided as N/A in the source data; the vector is inferred from the vulnerability characteristics and should be treated as provisional until an official score is assigned.
EPSS score is 0.00238 (13.6th percentile), indicating low predicted exploitation activity in the wild at this time. CISA KEV status is NO. No threat actor campaigns are known to be associated with this CVE.
Detection Guidance
Sigma Rule
title: Brocade Fabric OS Command Injection in Upgrade Request Parameters
id: 7a3f9c2e-8b1d-4f5a-9c6e-2d8e4f7a1b3c
status: experimental
description: Detects shell metacharacters in Brocade Fabric OS upgrade request parameters, indicating CVE-2026-87662 exploitation attempts.
author: valtersit.com
date: 2026-02-14
logsource:
category: webserver
product: brocade
detection:
selection_method:
cs-method: 'POST'
selection_uri:
cs-uri-stem|contains:
- '/upgrade'
- '/firmware'
- '/download'
selection_payload:
cs-uri-query|contains:
- ';'
- '|'
- '`'
- '$('
- '&'
- '%3B'
- '%7C'
- '%60'
- '%24%28'
condition: selection_method and selection_uri and selection_payload
falsepositives:
- Legitimate file paths containing semicolons or pipes (rare)
level: high
tags:
- attack.t1190
- cve.2026.87662
YARA Rule
rule CVE_2026_87662_Brocade_Command_Injection
{
meta:
description = "Detects shell metacharacters in Brocade Fabric OS upgrade request parameters indicative of CVE-2026-87662 exploitation"
author = "valtersit.com"
date = "2026-02-14"
reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-87662"
cve = "CVE-2026-87662"
strings:
$s1 = "host=" ascii nocase
$s2 = "file=" ascii nocase
$s3 = "path=" ascii nocase
$m1 = ";" ascii
$m2 = "|" ascii
$m3 = "`" ascii
$m4 = "$(" ascii
$m5 = "&&" ascii
$m6 = "||" ascii
condition:
any of ($s*) and any of ($m*)
}
Suricata IDS Rule
alert http any any -> any any (msg:"CVE-2026-87662 Brocade Fabric OS Command Injection Attempt"; flow:to_server,established; http.method; content:"POST"; http.uri; content:"upgrade"; nocase; http.request_body; content:"host="; nocase; http.request_body; content:";"; distance:0; http.request_body; content:"|7C|"; distance:0; http.request_body; content:"|60|"; distance:0; classtype:attempted-admin; sid:202687662; rev:1; reference:cve,2026-87662; reference:url,nvd.nist.gov/vuln/detail/CVE-2026-87662;)
Elastic Detection
sequence by host.id, process.entity_id with maxspan=5s
[network where network.protocol == "http" and
http.request.method == "POST" and
http.request.body.text contains "host=" and
(http.request.body.text contains ";" or
http.request.body.text contains "|" or
http.request.body.text contains "`" or
http.request.body.text contains "$(")]
[process where process.parent.name == "firmwared" and
process.args_count > 0]
Splunk SPL Query
index=network OR index=firewall OR index=proxy
| search (uri_path="/upgrade" OR uri_path="/firmware" OR uri_path="/download")
| search (request_body="*;*" OR request_body="*|*" OR request_body="*`*" OR request_body="*$(*" OR request_body="*%3B*" OR request_body="*%7C*")
| stats count min(_time) as first_seen max(_time) as last_seen by src_ip, dest_ip, uri_path, request_body
| where count > 0
| sort - count
Wazuh OSSEC Rule
<group name="brocade,web,cve-2026-87662,">
<rule id="2026876" level="12">
<if_sid>31100</if_sid>
<id>^2026876$</id>
<description>CVE-2026-87662: Brocade Fabric OS command injection attempt in upgrade request parameters</description>
<match>upgrade|firmware|download</match>
<regex>host=.*[;|`$()&]</regex>
<mitre>
<id>T1190</id>
</mitre>
<group>attack,attempted_admin,</group>
</rule>
</group>
Mitigation & Patch Guidance
Patch confidence: 0/4 (UNPATCHED — no patch evidence from any tracked source).
Immediate mitigations:
- Restrict network access to the Brocade Fabric OS management interfaces to trusted administrative VLANs only. Apply strict firewall rules to prevent untrusted networks from reaching the firmware upgrade endpoints.
- Disable the firmware upgrade functionality if it is not operationally required, or restrict it to authorized management stations.
- Enable and monitor audit logging for all firmware upgrade requests, focusing on parameters containing shell metacharacters.
- Deploy the detection rules provided above to identify exploitation attempts in real time.
Patch/upgrade steps:
- No official patch is currently available from tracked sources. Monitor the vendor's security advisory page for updates. Affected versions are before 9.2.2d and 10.0.0 through 10.0.0a1; the fix is expected in 9.2.2d and a future 10.0.0 release beyond a1, but this is not confirmed by patch evidence.
- When a patch is released, upgrade all affected switches promptly, prioritizing internet- or partner-accessible management interfaces.
Long-term hardening:
- Implement input validation and output encoding for all parameters passed to system shells in custom management scripts — though the vulnerable component is vendor-supplied, use this as a reminder to audit other integrations.
- Enforce the principle of least privilege for management daemons; avoid running network-facing services as root where possible.
- Segment SAN management traffic from general-purpose networks.
- Conduct regular vulnerability scanning of fabric infrastructure and subscribe to vendor security advisories.
References
- NVD — CVE-2026-87662: https://nvd.nist.gov/vuln/detail/CVE-2026-87662
- Brocade Security Advisories: https://www.broadcom.com/support/fibre-channel-networking/security-advisories (monitor for CVE-2026-87662)
- CWE-78: Improper Neutralization of Special Elements used in an OS Command: https://cwe.mitre.org/data/definitions/78.html
- MITRE ATT&CK T1190 — Exploit Public-Facing Application: https://attack.mitre.org/techniques/T1190/
- CISA KEV Catalog: https://www.cisa.gov/known-exploited-vulnerabilities-catalog (not listed as of this report)
No threat actor campaigns or exploit-in-the-wild evidence are currently known for CVE-2026-87662.
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.