CVE-2026-90608
Executive Summary
CVE-2026-90608 is a remotely triggerable buffer overflow (CWE-119) in the TOTOLINK A3002MU wireless router firmware build Hh-B20211125.1046. The flaw resides in the formPortFw function exposed through the /boafrm/formPortFw endpoint of the embedded boa web server, and is reachable by manipulating the service_type argument. With a CVSS v3.1 base score of 9.9 (scope-changed, High confidentiality/integrity/availability impact) and a public exploit already released, affected devices should be treated as critically exposed; no vendor patch is currently available.
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
The vulnerability is a classic memory-safety defect (CWE-119 — Improper Restriction of Operations within the Bounds of a Memory Buffer) affecting the boa HTTP server component shipped in TOTOLINK A3002MU firmware version Hh-B20211125.1046.
The affected code path is the function formPortFw, invoked via the /boafrm/formPortFw URI. This handler is part of the router's web-based management interface — the same interface used to configure port forwarding rules. The service_type argument passed to this handler is copied into a fixed-size buffer without adequate length validation, so an oversized value overwrites adjacent stack or heap memory and corrupts control-flow-relevant data.
boa is a small-footprint embedded web server commonly used on consumer routers, and formPortFw handlers of this style are typically reachable over the LAN management interface and, in misconfigured deployments, over the WAN. The NVD description explicitly states the attack can be "initiated remotely," meaning no physical access is required — network reachability to the management interface is sufficient.
Key characteristics derivable from the data provided:
- Vulnerability class: Buffer overflow (CWE-119), triggered by attacker-controlled input to a single named parameter (
service_type). - Attack vector: Network (AV:N), no user interaction (UI:N), low complexity (AC:L). Notably the vector declares PR:L — the attacker is modeled as requiring some privilege (e.g., an authenticated or otherwise-present session context), consistent with a management-interface handler rather than a fully anonymous unauthenticated endpoint. This does not reduce the operational danger, since default credentials and weak session controls are endemic to consumer CPE.
- Scope: Changed (S:C) — successful exploitation can escape the vulnerable component's security authority and impact resources beyond the
boaprocess boundary. Combined with High C/I/A ratings, this indicates the potential for full device compromise, not merely a denial-of-service crash. - Weaponization status: NVD confirms a public exploit exists and "may be used." NVD provides no further code-level detail; no additional function names, offsets, or payload structure should be assumed beyond what is stated above.
The absence of a CNA title and any affected-version metadata beyond the single firmware string means the true breadth of affected A3002MU builds cannot be confirmed from available sources. Treat all A3002MU units at or near build Hh-B20211125.1046 as suspect until the vendor clarifies.
Exploitation Scenarios
No public PoC was retrievable through tracked sources for this report; the following attack chain is inferred from the vulnerability class and the specifics given in the NVD description. No specific code patterns, offsets, or hypothetical function names beyond formPortFw, service_type, /boafrm/formPortFw, and boa are asserted.
1) Reconnaissance / target identification
An attacker scans for internet- or LAN-reachable TOTOLINK A3002MU management interfaces. Fingerprinting relies on the exposed boa web server and the device's administrative login page. Shodan-style queries such as http.html:"formPortFw" or http.title:"TOTOLINK" can enumerate candidate hosts. Because CVSS models PR:L, the attacker may first need to reach the admin context (default credentials, an existing session, or a low-privilege foothold on the same network segment).
2) Triggering the flaw
The attacker sends an HTTP request to /boafrm/formPortFw containing an oversized service_type argument. The handler in boa copies this value into a fixed-size buffer without bounds checking. The excess bytes overflow the destination buffer and overwrite adjacent memory.
3) Payload / execution method (class level)
Because the overflow is attacker-controlled, a crafted service_type value can be shaped to corrupt memory such that execution flow is redirected — the general exploitation pattern for CWE-119. The exact payload mechanics (stack layout, overwrite targets, mitigations present) are not disclosed in the available data and should not be assumed. The practical outcome is memory corruption that may yield code execution within the boa process, crash the service, or destabilize the device — consistent with the High C/I/A and scope-changed CVSS profile.
4) Post-exploitation impact
Given S:C and High impact across all three CIA dimensions, successful exploitation likely grants an attacker control over the router's management plane — enabling configuration tampering, traffic redirection, credential capture, or persistent foothold within the network. At minimum, a reliable denial-of-service (device reboot or web-UI lockup) is achievable. As the process typically runs with elevated privilege on embedded firmware, compromise of boa can translate into device-wide control.
Impact Assessment
- Severity: CVSS v3.1 base 9.9 — Critical. Scope Changed with High Confidentiality, Integrity, and Availability impact.
- Blast radius: The immediate target is the TOTOLINK A3002MU running firmware Hh-B20211125.1046. As a network-edge device, a compromised router places every downstream host at risk (traffic interception, DNS manipulation, lateral movement pivot).
- Exploitability: Public exploit exists; attack is remote, low-complexity, and requires no user interaction. The PR:L component implies some access context but does not meaningfully constrain a determined attacker against consumer CPE with default credentials.
- Availability: Buffer overflows in embedded web services frequently crash the daemon, causing management-interface outage and potentially full device reboot loops.
- Patch status: UNPATCHED per all tracked sources (Patch Confidence 0/4). No CISA KEV listing confirmed at time of writing, but public exploit availability elevates urgency.
- EPSS: Not yet scored by FIRST.org; no value fabricated.
Detection Guidance
Sigma Rule
title: TOTOLINK A3002MU formPortFw service_type Buffer Overflow Attempt
id: 8f2c1a44-9060-4b7e-9a1d-totolink90608
status: experimental
description: Detects HTTP requests targeting /boafrm/formPortFw with oversized service_type parameter, indicative of CVE-2026-90608 exploitation.
references:
- https://nvd.nist.gov/vuln/detail/CVE-2026-90608
author: valtersit.com
date: 2026/01/01
logsource:
category: webserver
product: boa
detection:
selection_uri:
cs-uri-stem|contains: '/boafrm/formPortFw'
selection_param:
cs-uri-query|contains: 'service_type='
selection_len:
cs-uri-query|re: 'service_type=.{256,}'
condition: selection_uri and selection_param and selection_len
falsepositives:
- Legitimate configuration with unusually long service type strings (rare)
level: high
tags:
- attack.t1190
- cve.2026.90608
YARA Rule
rule CVE_2026_90608_TOTOLINK_formPortFw_Overflow
{
meta:
description = "Detects exploitation attempts of CVE-2026-90608 against TOTOLINK A3002MU boa formPortFw"
author = "valtersit.com"
reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-90608"
date = "2026-01-01"
severity = "critical"
strings:
$uri = "/boafrm/formPortFw" ascii nocase
$param = "service_type=" ascii nocase
$pad = /service_type=[A-Za-z0-9%.]{200,}/ ascii nocase
condition:
$uri and $param and $pad
}
Suricata IDS Rule
alert http any any -> any any (msg:"CVE-2026-90608 TOTOLINK A3002MU formPortFw service_type buffer overflow attempt"; flow:established,to_server; http.uri; content:"/boafrm/formPortFw"; http.uri; content:"service_type="; pcre:"/service_type=[^&\\s]{200,}/Ui"; classtype:attempted-admin; reference:cve,2026-90608; reference:url,nvd.nist.gov/vuln/detail/CVE-2026-90608; sid:9060801; rev:1;)
Elastic Detection
sequence by source.ip with maxspan=10s
[ network where http.request.method == "GET" and url.path == "/boafrm/formPortFw" ]
[ network where http.request.method == "POST" and url.path == "/boafrm/formPortFw" and
url.query contains "service_type=" and length(url.query) > 250 ]
Splunk SPL Query
index=web OR index=proxy
| search uri_path="/boafrm/formPortFw" OR url="/boafrm/formPortFw*"
| rex field=uri_query "(?<stype>service_type=[^&]+)"
| where len(stype) > 200 OR len(uri_query) > 300
| stats count min(_time) as first_seen max(_time) as last_seen by src_ip, dest_ip, stype
| sort - count
| table first_seen last_seen src_ip dest_ip count stype
Wazuh OSSEC Rule
<group name="web,totolink,cve-2026-90608,">
<rule id="906080" level="12">
<decoded_as>json</decoded_as>
<field name="url">/boafrm/formPortFw</field>
<description>CVE-2026-90608: Possible TOTOLINK A3002MU formPortFw service_type buffer overflow attempt</description>
<mitre>
<id>T1190</id>
</mitre>
<group>cve_2026_90608,attempted_admin,</group>
</rule>
<rule id="906081" level="13">
<if_sid>906080</if_sid>
<regex>service_type=.{200,}</regex>
<description>CVE-2026-90608: Oversized service_type parameter - likely exploitation</description>
<group>cve_2026_90608,</group>
</rule>
</group>
Mitigation & Patch Guidance
Patch confidence: 0/4 (UNPATCHED — no patch evidence from any tracked source).
1) Immediate mitigations
- Remove or block WAN exposure of the A3002MU management interface; place the device behind a firewall and restrict access to trusted LAN segments.
- Disable remote administration entirely if not operationally required.
- Change all default credentials and enforce strong, unique admin passwords; disable any anonymous/unauthenticated management paths.
- Segment IoT/CPE devices into a dedicated VLAN to limit lateral movement if the router is compromised.
- Where feasible, apply virtual patching at the IDS/IPS and WAF layer (e.g., the Suricata rule above) to drop requests with oversized
service_typeparameters to/boafrm/formPortFw.
2) Patch / upgrade steps
- No vendor patch is available from any tracked source. Monitor TOTOLINK's official support and firmware-download pages for an updated A3002MU build superseding Hh-B20211125.1046, and watch the NVD entry for a vendor-fix reference.
- If the vendor issues a fixed firmware, upgrade immediately and verify the build string afterwards.
- If no fix materializes and the device is business-critical, evaluate replacement with a supported model.
3) Long-term hardening
- Institute a CPE lifecycle program: inventory, track firmware versions, and enforce vendor-support windows.
- Standardize on devices with active security-update commitments.
- Monitor NVD, CISA KEV, and vendor advisories for this CVE and related TOTOLINK issues.
- Incorporate the detection content above into SOC playbooks and alert on repeated overflow attempts as a precursor to further intrusion activity.
References
- NVD — CVE-2026-90608: https://nvd.nist.gov/vuln/detail/CVE-2026-90608
- CWE-119 — Improper Restriction of Operations within the Bounds of a Memory Buffer: https://cwe.mitre.org/data/definitions/119.html
- MITRE ATT&CK T1190 — Exploit Public-Facing Application: https://attack.mitre.org/techniques/T1190/
- TOTOLINK official support / firmware downloads (monitor for A3002MU updates): https://www.totolink.net/
- FIRST EPSS (score pending at time of writing): https://www.first.org/epss/
Exploit-in-the-wild / threat actor note: NVD states the exploit "has been published and may be used." No specific threat-actor campaign attribution is available from the provided data, and no fabricated attribution is asserted here. CISA KEV status: not listed at time of writing.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.