D-Link DIR-859 Router Command Execution Vulnerability (CVE-2019-17621)
Published In CISA KEV since Sources: CVE.org
What is affected, what to do
The vulnerability CVE-2019-17621 allows for remote code execution (RCE) on the D-Link DIR-859 Router via a crafted HTTP SUBSCRIBE request to the UPnP service. An unauthenticated attacker can execute system commands as root, gaining full control over the device. This vulnerability is actively exploited, as evidenced by its inclusion in the CISA KEV list in June 2023. Affected products include specific firmware versions of the DIR-859 and other D-Link router models. An immediate update to the latest firmware version is strongly advised to mitigate this security risk.
The vulnerability is being actively exploited; treat it as a priority. The available sources name no fixed version. Check the vendor guidance in the references below. Immediate actions, mitigation and detection rules are in the runbook below.
- Affected
- D-Link Dir-859 Firmware
lte *..1.05b03 - D-Link Dir-859 Firmware
eq 1.06b01..1.06b01 - D-Link DIR-822 Router Firmware
lte *..2.03b01 - D-Link DIR-822 Router Firmware
lte *..3.12b04 - D-Link DIR-823 Firmware
lte *..1.00b06 - D-Link DIR-823 Firmware
eq 1.00b06..1.00b06 - D-Link DIR-865L Firmware Reva Firmware Patch 1.08.B01
lte *..1.07b01 - D-Link DIR-868L FIRMWARE
lte *..1.12b04 - D-Link DIR-868L FIRMWARE
lte *..2.05b02 - D-Link Dir-869 Firmware
lte *..1.03b02 - D-Link Dir-869 Firmware
eq 1.03b02..1.03b02 - D-Link DIR-880L Firmware
lte *..1.08b04 - D-Link DIR-890L Firmware
lte *..1.11b01 - D-Link DIR-890L Firmware
eq 1.11b01..1.11b01 - D-Link Dir-890r Firmware
lte *..1.11b01 - D-Link Dir-890r Firmware
eq 1.11b01..1.11b01 - D-Link DIR-885L Firmware
lte *..1.12b05 - D-Link Dir-885r Firmware
lte *..1.12b05 - D-Link DIR-895L Firmware
lte *..1.12b10 - D-Link Dir-895r Firmware
lte *..1.12b10
- D-Link Dir-859 Firmware
Not sure whether and how you are affected? Ask a question about this vulnerability
Metrics
9.8
Priority
XIEM Effective CVSS: highest available CVSS rating from NVD and vendor data.
Source: NVD, CVSS v3
9.8
CVSS v3
Severity Critical on the scale from 0 to 10.
Source: CVE.org
90.6 %
EPSS score
High — model estimates ≥ 50% chance of real-world exploitation within 30 days.
Source: FIRST EPSS, percentile 99.80
Show all metrics
- Severity
- Critical
Priority (0–325)
The priority score is a consolidated metric that condenses several individual signals into a single, action-guiding ranking: technical severity (CVSS), exploitation likelihood (EPSS), known-exploited status (KEV) and the context of the affected asset. The aim is to answer the only truly important question in vulnerability management: what first?
Read in glossary- 228.68 Methodology
Exploit maturity
An exploit is code or a technique that specifically uses a concrete vulnerability to force unintended behaviour — such as executing code or escalating privileges. It is the tool that turns a theoretical flaw into a practical attack.
Read in glossary- actively exploited
XIEM Effective CVSS
XIEM® is the tiered managed-security operating model from NEOSEC and a registered trademark of NEOSEC GmbH. It extends classic SIEM — the central collection, normalisation and correlation of security-relevant events — with endpoint forensics, network visibility and deception technology, and consolidates them into three building tiers: Sentry, Orchestrate and Command.
Read in glossary- 9.8 Methodology
CVSS v3
CVSS is the globally established, open standard for assessing the technical severity of a vulnerability on a scale from 0 to 10. It describes how easily a flaw can be exploited and what damage it can cause — but not how likely its actual exploitation is. CVSS and the complementary EPSS deliberately answer different questions.
Read in glossary- 9.8
EPSS score
The EPSS score is the absolute model output for an individual vulnerability: the estimated probability of real-world exploitation within the next 30 days, expressed as a value between 0 and 1 (i.e. 0 % to 100 %). A score of 0.42 means „the model estimates a 42 % chance of real-world exploitation within 30 days“.
Read in glossary- 90.6 %
- High — model estimates ≥ 50% chance of real-world exploitation within 30 days.
EPSS percentile
The EPSS percentile is the relative position of a vulnerability within all EPSS-scored CVEs, expressed as a value between 0 and 1. A percentile of 0.90 means „this CVE has a higher EPSS score than 90 % of all other scored CVEs“. Unlike the EPSS score, it is not a probability — but a positioning within a ranking.
Read in glossary- 99.80
- Critical — this CVE ranks in the top fifth of all CVEs scored today (rank ≥ 80%).
KEV status
The KEV catalogue is a list maintained by the US authority CISA of vulnerabilities for which active exploitation in the wild has been confirmed. It answers not the question „how severe?“ but „is it already being attacked?“ — thereby sharply prioritising patching.
Read in glossary- Actively exploited
- Published
In CISA KEV since
The KEV catalogue is a list maintained by the US authority CISA of vulnerabilities for which active exploitation in the wild has been confirmed. It answers not the question „how severe?“ but „is it already being attacked?“ — thereby sharply prioritising patching.
Read in glossary- CISA assessment (SSVC)
- Exploitation: active · automatable · Technical impact: total
- Source: CISA Vulnrichment, as of 4 February 2025
CWE
CWE is a catalogue of typical weakness types in software and hardware — such as flawed input validation, unsafe memory handling or poor authentication. Where a CVE names a concrete vulnerability in a concrete product, a CWE describes the underlying class of defect.
Read in glossary- CWE-78
Response and mitigation
Why act now?
Prioritisation rationale
This CVE sits on KEV because it offers unauthenticated, network-reachable root RCE on an exposed consumer router — the exact primitive used to recruit devices into Mirai-class botnets, Mozi variants and residential proxy infrastructure. Exploitation likelihood is at the very top of the KEV catalogue; working PoCs have been public for years and are embedded in off-the-shelf IoT scanner tooling. For any organisation running D-Link SOHO hardware at the perimeter or in branch/home-office setups — especially within NIS2 scope, where a compromised edge device pivots directly into admin or OT networks — treat this as critical. With no vendor patch for DIR-859, hardware replacement is the only durable fix; everything else is interim compensation.
Runbook step 1
Immediate response (0-24 h)
- Inventory all D-Link DIR-859 units plus the co-listed models (DIR-818LX, DIR-822, DIR-823, DIR-865L); firmware 1.05 and 1.06B01 Beta01 are confirmed vulnerable. Use SNMP,
nmap -p 49152 --script upnp-info, or your asset DB. - DIR-859 is End-of-Life — no official patch exists. D-Link's guidance is to retire the device. Any unit still in production use must be replaced within 24 h by a supported model (or OpenWrt-capable hardware).
- Until replacement: disable UPnP in the web UI (
Advanced → Advanced Network → Enable UPnP = off) and hard-block WAN-side reachability of TCP/49152 (gena.cgi) and the full admin plane (80/443/TCP). - Shrink internal exposure: isolate the router from client VLANs; drop HTTP method
SUBSCRIBE/NOTIFYat an internal L7 choke point if no legitimate UPnP use case exists. - Rotate credentials: admin password, WPA2-PSK, DynDNS and any cloud account stored on the device. Root RCE means the entire configuration must be treated as compromised.
- On suspected compromise: physically disconnect, forensically preserve the config dump, and replace the hardware — a factory reset will not evict a persistent firmware implant.
- Inventory all D-Link DIR-859 units plus the co-listed models (DIR-818LX, DIR-822, DIR-823, DIR-865L); firmware 1.05 and 1.06B01 Beta01 are confirmed vulnerable. Use SNMP,
Runbook step 2
Mitigation layers
- Network segmentation: SOHO routers belong in a dedicated management VLAN; never expose their management plane in user or OT segments. Egress policy on the router: allow only HTTP/HTTPS/DNS to defined destinations, block Tor exits, mining pools and known C2 ranges.
- WAF/IPS: Suricata/Snort rule alerting or dropping inbound HTTP requests with method
SUBSCRIBEagainst URI/gena.cgi, especially with shell metacharacters in theCallbackorNTheader. Rule shape:alert http any any -> $HOME_NET any (msg:"CVE-2019-17621 D-Link gena.cgi SUBSCRIBE RCE"; http.method; content:"SUBSCRIBE"; http.uri; content:"/gena.cgi"; pcre:"/Callback\\s*:\\s*<[^>]*[;|&$()][^>]*>/i"; sid:1002019176; rev:1;)`. - Perimeter hardening: disable UPnP at the edge entirely; forbid UPnP-driven port forwards. Block SSDP (UDP/1900) ingress.
- IAM / least privilege: if removal is not feasible, restrict management to an out-of-band network, disable remote management and the mydlink cloud portal.
- Monitoring baseline: watch NetFlow/IPFIX on the router IP — unusual outbound flows to high ports or geographically implausible destinations indicate an active backdoor.
- Strategic: in NIS2 scope, replace consumer-grade SOHO gear with manageable enterprise hardware offering central logging, signed firmware and a vendor patch SLA.
Runbook step 3
Detection rules
- Web and proxy logs: look for HTTP method
SUBSCRIBEagainst path/gena.cgi. KQL shape:CommonSecurityLog | where RequestMethod == "SUBSCRIBE" and RequestURL contains "/gena.cgi". Legitimate internet-originating SUBSCRIBE traffic is effectively nonexistent. - Suricata/Zeek: HTTP
Callback:header containing shell metacharacters (;,|,`,$(,&); in Zeekhttp.logcorrelatemethod == "SUBSCRIBE"withuri == "/gena.cgi". - Firewall telemetry: inbound connections to TCP/49152 (DIR-859 default UPnP port) from WAN — should be zero in a hardened environment.
- Egress anomaly: the router management IP initiating outbound connections to new external IPs, especially reverse-shell patterns (high destination ports, long-lived low-volume sessions). Sigma shape:
detection: selection: src_ip: <router_mgmt_ip> dst_port: [4444, 1337, 8080] condition: selection. - DNS telemetry: lookups from the router to dynamic-DNS providers (duckdns, no-ip, afraid.org) that are not explained by a documented configuration should be treated as IOC.
- Web and proxy logs: look for HTTP method
Detection rules
No NEOSEC detection rule is available for this vulnerability yet.
Classification under NIS2 and CRA
Rule-based classification from exploitation status and severity. It does not replace a case-by-case assessment.
NIS2
NIS2 is EU Directive (EU) 2022/2555 to raise the level of cybersecurity across the Union. It substantially broadens obligations compared with the first NIS directive: more sectors, mandatory risk management, staged reporting duties and personal accountability of senior management.
Read in glossary- Actively exploited: treat the vulnerability as a priority in vulnerability handling under Art. 21(2)(e) NIS2. If it is exploited in your environment, check the reporting obligation under Art. 23 (early warning within 24 hours).
CRA
The CRA is EU Regulation (EU) 2024/2847 setting horizontal cybersecurity requirements for „products with digital elements“ — from industrial controllers and software to connected consumer devices. For the first time manufacturers must ensure security across the entire product lifecycle, handle vulnerabilities and provide security updates.
Read in glossary- Since 11.09.2026, manufacturers of affected products with digital elements must report actively exploited vulnerabilities under Art. 14 CRA, with an early warning within 24 hours via ENISA's single reporting platform.
ISO/IEC 27001
ISO/IEC 27001 is the internationally leading standard for an information security management system (ISMS). It describes a risk-based, process-oriented framework to systematically plan, implement, review and improve information security.
Read in glossary- Control A.8.8, management of technical vulnerabilities: assess relevance to your systems, plan remediation and keep evidence.
Description
The UPnP endpoint URL /gena.cgi in the D-Link DIR-859 Wi-Fi router 1.05 and 1.06B01 Beta01 allows an Unauthenticated remote attacker to execute system commands as root, by sending a specially crafted HTTP SUBSCRIBE request to the UPnP service when connecting to the local network.
Source: NVD (NIST), cvelistv5, CISA KEV Catalog, CVE.org (MITRE)
Vendors and products
- D-Link D-Link DIR-822 Router Firmware
- D-Link D-Link DIR-823 Firmware
- D-Link Dir-859 Firmware
- D-Link D-Link DIR-865L Firmware Reva Firmware Patch 1.08.B01
- D-Link D-Link DIR-868L FIRMWARE
- D-Link Dir-869 Firmware
- D-Link D-Link DIR-880L Firmware Reva Firmware Patch 1.08B04
- D-Link D-Link DIR-885L Firmware
- D-Link D-Link DIR-890L Firmware
- D-Link D-Link DIR-895L Firmware
- D-Link Dir-895r Firmware
Affected operating systems
| Other | dlink | dir-818lx_firmware | — |
| Other | dlink | dir-822_firmware | — |
| Other | dlink | dir-823_firmware | 1.00b06 |
| Other | dlink | dir-823_firmware | — |
| Other | dlink | dir-859_firmware | 1.06b01 |
| Other | dlink | dir-859_firmware | — |
| Other | dlink | dir-865l_firmware | — |
| Other | dlink | dir-868l_firmware | — |
| Other | dlink | dir-869_firmware | 1.03b02 |
| Other | dlink | dir-869_firmware | — |
| Other | dlink | dir-880l_firmware | — |
| Other | dlink | dir-885l_firmware | — |
| Other | dlink | dir-885r_firmware | — |
| Other | dlink | dir-890l_firmware | 1.11b01 |
| Other | dlink | dir-890l_firmware | — |
| Other | dlink | dir-890r_firmware | 1.11b01 |
| Other | dlink | dir-890r_firmware | — |
| Other | dlink | dir-895l_firmware | — |
| Other | dlink | dir-895r_firmware | — |
Weakness classes (CWE)
CWE-78Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')
Base
The product constructs all or part of an OS command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended OS command when it is sent to a downstream component.
Entry at MITRE CWE-78
Public exploit references
Publicly reported proof-of-concepts, exploit modules and detection templates for this vulnerability. NEOSEC links to the original sources only and does not provide any exploit code.
| CISA KEV Catalog | CISA Known Exploited Vulnerability (opens in a new tab)cisa.gov | actively exploited | |
| Packet Storm | D Link DIR 859 Unauthenticated Remote Command Execution (opens in a new tab)packetstormsecurity.com | PoC (publicly reported)reported, not verified | — |
References & sources
- ftc.govsystem/files/documents/cases/dlink_proposed_order_and_judgment_…x_refsource_MISC, Third-party advisory, US government resource
- dlink.comen/security-bulletinx_refsource_MISC, Vendor advisory
- supportannouncement.us.dlink.comannouncement/publication.aspx?name=SAP10147x_refsource_CONFIRM, Patch, Vendor advisory
- supportannouncement.us.dlink.comannouncement/publication.aspx?name=SAP10146x_refsource_CONFIRM, Patch, Vendor advisory
- medium.com@s1kr10s/d-link-dir-859-rce-unautenticated-cve-2019-17621-en-d9…x_refsource_MISC, Exploit, Third-party advisory
- medium.com@s1kr10s/d-link-dir-859-rce-unautenticated-cve-2019-17621-es-fa…x_refsource_MISC, Broken link
- packetstormsecurity.comfiles/156054/D-Link-DIR-859-Unauthenticated-Remote-Command-Exec…x_refsource_MISC, Exploit, Third-party advisory, Vulnerability database
- cisa.govknown-exploited-vulnerabilities-catalog?field_cve=CVE-2019-17621government-resource, US government resource
Embed badge
Show the severity and KEV status of this vulnerability on your site – with a link back here. The image is updated hourly.
<a href="https://intel.neosec.eu/en/cve/CVE-2019-17621"><img src="https://intel.neosec.eu/badge/cve/CVE-2019-17621.svg?lang=en" alt="CVE-2019-17621 – NEOSEC Intel" height="20"></a>