CriticalCVE-2019-17621

    D-Link DIR-859 Router Command Execution Vulnerability (CVE-2019-17621)

    Published In CISA KEV since Sources: CVE.org

    Share

    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

    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.

    1. 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/NOTIFY at 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.
    2. 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 SUBSCRIBE against URI /gena.cgi, especially with shell metacharacters in the Callback or NT header. 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.
    3. Runbook step 3

      Detection rules

      • Web and proxy logs: look for HTTP method SUBSCRIBE against 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 Zeek http.log correlate method == "SUBSCRIBE" with uri == "/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.

    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

    Affected operating systems

    Affected operating systems
    Otherdlinkdir-818lx_firmware—
    Otherdlinkdir-822_firmware—
    Otherdlinkdir-823_firmware1.00b06
    Otherdlinkdir-823_firmware—
    Otherdlinkdir-859_firmware1.06b01
    Otherdlinkdir-859_firmware—
    Otherdlinkdir-865l_firmware—
    Otherdlinkdir-868l_firmware—
    Otherdlinkdir-869_firmware1.03b02
    Otherdlinkdir-869_firmware—
    Otherdlinkdir-880l_firmware—
    Otherdlinkdir-885l_firmware—
    Otherdlinkdir-885r_firmware—
    Otherdlinkdir-890l_firmware1.11b01
    Otherdlinkdir-890l_firmware—
    Otherdlinkdir-890r_firmware1.11b01
    Otherdlinkdir-890r_firmware—
    Otherdlinkdir-895l_firmware—
    Otherdlinkdir-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.

    Public exploit references
    CISA KEV CatalogCISA Known Exploited Vulnerability (opens in a new tab)cisa.govactively exploited
    Packet StormD Link DIR 859 Unauthenticated Remote Command Execution (opens in a new tab)packetstormsecurity.comPoC (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.

    Badge preview for CVE-2019-17621
    <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>