hero-background-color-red-orange-gradient
image
https://assets.lumen.com/is/image/Lumen/IMG-Blog-BLL-JDY-Botnet-Hero-848x566-1
https://assets.lumen.com/is/image/Lumen/IMG-Blog-BLL-JDY-Botnet-Hero-848x566-1
https://assets.lumen.com/is/image/Lumen/IMG-Blog-BLL-JDY-Botnet-Hero-848x566-1
Black Lotus Labs hero image
content
content-col-11
Expanded JDY IoT and SOHO botnet enables rapid vulnerability exploitation

Black Lotus Labs® recently identified a significant resurgence of the JDY botnet, a covert reconnaissance network tied to China-nexus threat activity. In this report, we examine how the botnet has expanded its footprint, diversified its device base and enabled rapid vulnerability targeting, giving defenders important insight into how modern reconnaissance supports subsequent exploitation.

Key findings

This article provides a detailed overview of how Black Lotus Labs tracked the botnet’s evolution, why it matters to defenders and how enterprise security teams can respond to minimize the threat to their organizations.

Research overview

In December 2023, Black Lotus Labs unveiled KV-botnet, a covert network of thousands of SOHO routers and firewall devices used by China-based APTs, most notably Volt Typhoon, to conduct espionage and intelligence operations targeting U.S. critical infrastructure.

At the time, the botnet consisted of four clusters. The primary focus was on the “KV cluster,” used as a covert data transfer network, and the “JDY cluster,” used for scanning and reconnaissance. The KV cluster became largely defunct following public disclosure and U.S. government takedown efforts from late 2023 to early 2024. Despite these setbacks, the JDY cluster remained an active threat and is the focus of this report.

Since the initial disclosure, the JDY botnet surged to more than 1,500 compromised SOHO and IoT devices actively conducting targeted scanning and service fingerprinting. Analysis of this activity shows a clear focus on identifying vulnerable infrastructure shortly after public vulnerability disclosures, suggesting that reconnaissance output is rapidly operationalized by China-nexus advanced persistent threat (APT) actors. This targeted focus has been observed across a range of sectors, with the U.S. military and associated entities as the most prominent.

Background and context

Black Lotus Labs monitors the rapidly growing trend of APT actors operating through botnets and other large networks of compromised consumer devices, sometimes referred to as covert networks or operational relay box (ORB) networks. These covert networks have become a foundational component of modern nation-state cyber operations, enabling adversaries to blend malicious activity into legitimate traffic while maintaining global reach and persistence.

We have closely tracked the evolution of this tradecraft, including the emergence of purpose-built reconnaissance infrastructure, as described in our report on Raptor Train. These networks are designed to systematically discover and fingerprint exposed services and vulnerable systems across the internet. One such capability is the JDY botnet.

JDY’s growth and continued operation illustrate how modern reconnaissance networks persist despite takedowns and adapt as a durable capability within a broader adversary ecosystem. Understanding the botnet's structure, scalability and reconnaissance capabilities is essential for defenders to detect early signs of scanning and minimize risks before exploitation.

How the JDY botnet enables network reconnaissance and vulnerability exploitation

The JDY botnet has more than doubled in size since the U.S. government takedown efforts against the KV cluster. In January 2024, the low point of JDY activity, we observed approximately 650 bots communicating with the JDY command-and-control (C2) servers. Today, the JDY botnet comprises more than 1,500 compromised devices actively conducting scanning and reconnaissance. These devices are physically located throughout Europe, Asia and the Americas, with the majority located in the United States.

https://assets.lumen.com/is/image/Lumen/IMG-Blog-BLL-JDY-fig-1-reset
https://assets.lumen.com/is/image/Lumen/IMG-Blog-BLL-JDY-fig-1-reset
https://assets.lumen.com/is/image/Lumen/IMG-Blog-BLL-JDY-fig-1-reset
Description: A World map is shaded with color coding to show where the primary JDY targets are concentrated. Different colors indicate different target volumes, with a vertical “IP Count” bar on the right serving as the legend for the scale. The map shows that the heaviest concentration of targets is in the United States, with smaller concentrations appearing in South America, Europe and Asia.
Figure 1: The geographic distribution of the JDY botnet shows that most devices are located in the United States.

In addition to expanding in size, the botnet has diversified its victim base. Previously, the JDY cluster was comprised exclusively of two Cisco router models: RV320 and RV325. Today, the bots that make up this network include many compromised SOHO and IoT devices from manufacturers such as Cisco, Araknis, Mimosa Networks, Ubiquiti, Draytek, Hikvision and Linksys.

https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-jdy-fig-2
https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-jdy-fig-2
https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-jdy-fig-2
Bar chart showing the top five manufacturers of compromised devices in the JDY botnet on a scale from 0 to 600. Cisco has the largest share by a wide margin with nearly 500, followed by Araknis, Draytek, Hikvision and Linksys, each with much smaller totals.
Figure 2: Top 5 manufacturers of devices comprising the JDY botnet and the number of compromised devices.

The botnet’s large number of U.S.-based SOHO and IoT devices enables the botnet operators to evade defenses and traditional IP-based controls, such as geofencing, IP reputation-based detection and static blocklists. By distributing their scanning and reconnaissance activity across a wide range of IP addresses, the operators make it less likely that any single IP will be labeled as a scanner and blocked. Additionally, using compromised SOHO and IoT devices helps this activity blend in with legitimate user traffic.

Reconnaissance fuels China-nexus APT exploitation efforts

The JDY botnet operates through a layered architecture. Operators manage infected infrastructure through concealed Tor nodes that obfuscate access to both C2 and payload servers. The C2 systems direct bot devices to perform widespread multiprotocol scans that collect service and banner details and TLS certificates while conducting vulnerability-focused reconnaissance. Results are sent to central servers for low-profile, continuous intelligence gathering that aids China-nexus threat actors.

https://assets.lumen.com/is/image/Lumen/IMG-BLL-blog-jdy-Figure3?$PNG$&Creativeid=90723622-14f0-4307-b528-7945dd7641cc
https://assets.lumen.com/is/image/Lumen/IMG-BLL-blog-jdy-Figure3?$PNG$&Creativeid=90723622-14f0-4307-b528-7945dd7641cc
https://assets.lumen.com/is/image/Lumen/IMG-BLL-blog-jdy-Figure3?$PNG$&Creativeid=90723622-14f0-4307-b528-7945dd7641cc
A network diagram illustrating how the JDY botnet operates. Botnet operators connect through hidden Tor services to command-and-control and payload servers, which in turn direct many compromised residential and small office or home office devices. These infected devices are spread across residential and small business IP space and are used to perform distributed, targeted scanning and reconnaissance against selected targets.
Figure 3: Network overview of JDY botnet, a China-nexus reconnaissance network that distributes targeted scanning across residential and small enterprise IP space.

Black Lotus Labs found that JDY botnet operators target specific devices for scanning and reconnaissance, rather than conducting widespread, indiscriminate scanning. Most notably, there was a selective increase in scans of Fortinet equipment immediately after the disclosure of a new vulnerability, indicating the ability and intent to find and exploit vulnerable devices before patches are widely applied.

https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-Figure4_white
https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-Figure4_white
https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-Figure4_white
A time-series chart showing Fortinet device scanning activity beginning on April 2, 2026, through April 4, 2026, and after the disclosure of CVE-2026-35616 on April 5, 2026. The chart indicates a noticeable spike in scanning shortly after the vulnerability was announced, demonstrating how quickly the JDY botnet began targeting Fortinet devices following public disclosure.
Figure 4: Scanning of Fortinet devices increased hours after disclosure of new Fortinet vulnerability CVE-2026-35616.

We also assess that the JDY botnet likely continues to support the efforts of various China-nexus APT actors based on its previous links to the KV-botnet and sustained targeting and victimology patterns. Rather than draw attention by scanning the entire internet, JDY’s activity indicates a clear focus on military-related targets. Of the IP addresses JDY scanned, most were associated with networks owned by the U.S. military and associated entities.

Botnet Infrastructure and obfuscated command-and-control

Upstream communications show ongoing management via hidden Tor services. Command and control is highly automated and nearly constant, with increased activity during botnet growth. Some victim devices are also managed using Platypus, an open-source reverse shell and host management tool. The JDY botnet payload server, 149.248.3[.]38, is hosting a Platypus server on port 13339, the default port used to download Platypus agents (also called Termite clients) to target endpoints.

https://assets.lumen.com/is/image/Lumen/BLL-blog-jdy-fig-5?$PNG$&Creativeid=5aef53c0-f195-490e-957b-b6b9da2d7897
https://assets.lumen.com/is/image/Lumen/BLL-blog-jdy-fig-5?$PNG$&Creativeid=5aef53c0-f195-490e-957b-b6b9da2d7897
https://assets.lumen.com/is/image/Lumen/BLL-blog-jdy-fig-5?$PNG$&Creativeid=5aef53c0-f195-490e-957b-b6b9da2d7897
Network flow chart showing near-continuous upstream communications from JDY botnet command-and-control and payload servers to Tor infrastructure for network management. The visualization highlights repeated connections between the botnet’s central servers and Tor nodes, illustrating how operators use obfuscated channels to manage the network on an ongoing basis.
Figure 5: Upstream communications from JDY botnet C2 and payload servers to Tor infrastructure for network management on a near-continual basis.

JDY malware analysis: distributed scanning and reconnaissance toolkit

Black Lotus Labs obtained several samples of the JDY botnet malware, which is a distributed scanning and target reconnaissance tool designed to:

The JDY malware focuses on infrastructure reconnaissance rather than exploiting targets, which likely supports follow-on asset discovery, vulnerability-targeting pipelines and downstream exploitation or attack-orchestration systems.

The JDY dropper

The dropper for the JDY payload is a lightweight bash script that walks through the following workflow to download and execute the malware on compromised SOHO and IoT devices:

  1. Query the running process list to determine whether the malware is already active, using a variable process name (auditdy).
  2. If a running instance is detected, ensure the corresponding file on disk is removed then exit.
  3. Determine the device architecture by probing available system utilities and parsing command output (using variations of hexdump, read, dd, awk or similar).
  4. Download the appropriate payload from a variable payload server using available tooling (busybox, curl, wget, or wgetssl), selecting the binary based on the detected architecture (mips, mips64, mipsel, mipsel64).
  5. Write the payload to /etc/ or /tmp/ (depending on disk space and permissions), set execute permissions, launch the malware with a variable C2 IP and group ID supplied via command‑line arguments, and then delete the payload from disk.
https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-Figure6
https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-Figure6
https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-Figure6
Network flow chart showing near-continuous upstream communications from JDY botnet command-and-control and payload servers to Tor infrastructure for network management. The visualization highlights repeated connections between the botnet’s central servers and Tor nodes, illustrating how operators use obfuscated channels to manage the network on an ongoing basis.
Figure 6: A portion of the JDY malware dropper code determines the device architecture by parsing system commands and their output.
https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-Figure7
https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-Figure7
https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-Figure7
Code snippet from the JDY malware dropper illustrating the portion of the script responsible for downloading the correct malware binary, writing it to disk, setting execute permissions and launching it. The command includes arguments for the command-and-control IP address and a group ID, showing how the malware connects to its remote server and organizes compromised devices into groups.
Figure 7: This JDY malware dropper snippet is responsible for downloading and executing the malware, including command-line arguments with the C2 IP and group ID.

JDY malware

The malware samples we obtained were a Linux-based scanning agent built for MIPS, MIPS64 and MIPSEL architectures, processor types commonly found in routers, network appliances and embedded systems. These architectures suggest that the malware is intended for routers and edge devices where monitoring and endpoint protection are limited.

At a high level, the malware’s workflow follows a seven-step process:

  1. Initializes and fingerprints the host
  2. Sends a beacon to dispatch service with probe metadata
  3. Receives scanning configuration and tasks
  4. Executes large-scale internet scanning tasks
  5. Collects responses (banners, TLS certs, metadata)
  6. Compresses and delivers results to dispatch service
  7. Repeats the process until explicitly told to exit

Once executed, the malware begins by initializing several variables, including a hardcoded malware version (in this case, 1.8.3.9), hardcoded architecture and a unique “probe_id,” which is computed by MD5 hashing system-specific information. It then checks that the required command line arguments are supplied and displays usage instructions if they are not:

usage:%s -g <group_id> -s <web_ip> [-l local_ip] [-c 0/1 check ports; default 1]

These command line arguments include a group ID, used for logical clustering on the backend; a remote server address, which functions as the C2 address; and optional flags to specify whether port scanning is enabled.

https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-Figure8
https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-Figure8
https://assets.lumen.com/is/image/Lumen/IMG-BLL-Research-Botnet-Blog-Figure8
Screenshot of disassembled code from the JDY malware showing the section responsible for reading command-line arguments when the payload starts. The code extracts values including a group ID, a remote server or command-and-control address, and optional settings such as local IP and port scanning behavior. These inputs are then used to configure and launch the malware’s communications and scanning functions.
Figure 8: This disassembled code snippet is responsible for parsing command line arguments and initiating the JDY payload.

C2 communications via the dispatch service

After parsing and storing the command line arguments, the malware starts a new thread to process the C2 communications. The initial check-in beacon is sent encrypted via an HTTPS POST request to the remote server address supplied via command line at the path /dispatch_service/v2/probe_status. The message includes a structured JSON payload containing the following information:

Rather than hard-coding targets, the malware retrieves tasks from its C2 infrastructure dynamically via the dispatch service. The dispatch service uses encrypted tasking, where responses are base64 decoded, decrypted using a hardcoded AES key (0000000000000000bdb718bdf47cbcde), and parsed as structured JSON. The malware retrieves this tasking by sending a GET request to the following endpoint:
/dispatch_service/v2/probe_task/%s?ip=%s&code=%s&v=%s&gid=%d&status=%u

Supported commands include:

Fingerprinting rules

When instructed to update its fingerprint rule database via the update_dmap_fp_db command, the malware downloads a set of protocol-specific matching rules. These rules define:

These rules turn the scanner into a sophisticated fingerprinting system capable of identifying specific services and protocols beyond simple “open/closed” port scan results. The malware issues a request to /dispatch/v2/dmap/<hex from dmp_fp_digest> and receives a response from the Dispatch Service. The response includes rules like the one below, which identifies Oracle WebLogic servers:

[ 
 { 
       "tunnel": "tcp",

"transfer": "",
"protocol": "weblogic",
"port": "7001",
"req": "t3 10.0.0\\nAS:7777\\nHL:18\\n\\n",
"rsp": "^HELO:[\\d]+(?:\\.[\\d]+)+[\\.a-z]*\\nAS:[012345689]+\\nHL:[\\d]+",
"mod": 4,
"loop": 1,
"rarity": 0,
"customizable": 0

 }, 
]  
 

Adaptive scanning engine

One of the most interesting components of malware is its scanning system, which adapts based on the malware’s privileges on the local system.

Raw packet scanning: preferred method

If the malware can open a raw socket, which generally requires root or administrative privileges, it initiates high-speed SYN scanning using custom-crafted TCP packets. These custom packets use a fixed source port of 19000, increment the destination ports one at a time, and batch-process thousands of scan targets. This method enables fast port discovery without completing TCP handshakes, reducing noise, and avoiding application-level logging on targets.

https://assets.lumen.com/is/image/Lumen/jdy%20fig%209%20replacement?$PNG$&Creativeid=e4065cc7-580b-4960-a234-7e3837d467e6
https://assets.lumen.com/is/image/Lumen/jdy%20fig%209%20replacement?$PNG$&Creativeid=e4065cc7-580b-4960-a234-7e3837d467e6
https://assets.lumen.com/is/image/Lumen/jdy%20fig%209%20replacement?$PNG$&Creativeid=e4065cc7-580b-4960-a234-7e3837d467e6
Screenshot of disassembled code showing the JDY malware setting up and starting a thread for raw packet scanning. The code initializes the scanning routine used for high-speed network probing, which allows the malware to send crafted packets and rapidly check many targets without completing full connections.
Figure 9: This disassembled code snippet is responsible for the setup and initialization of the thread for raw packet scanning.

Standard TCP and SSL scanning: fallback method

If raw sockets are unavailable or if the task is a web scan, the malware falls back to standard TCP and TLS connections, executed in parallel worker threads. While slower, this method allows the malware to gather richer data through other core functionality, including information on application banners, SSL/TLS versions, certificate metadata, domain resolutions and HTTP responses and redirects.

UDP and ICMP scanning

The scanning engine also supports UDP-based scanning and ICMP echo requests (ping), particularly for HTTP services. In one notable case, if the supplied destination port is 80, the malware will first send a crafted ping to the target with a hardcoded ICMP packet identifier (19037) and sequence number (35765). Responsive hosts are then scanned using the standard TCP scanning function to capture HTTP responses.

Reporting results back to the C2

As scan results accumulate and meet either a threshold count or a set time interval, the malware packages them into compressed JSON bundles. Included in the JSON bundle is a list of scan results, one per IP and port combination. The resulting data that is returned to the dispatch service includes the following fields:

The resulting JSON data for a banner grabbing task is structured like the example below:

{ 
"prober": { 
"v": "<version>", 
"ip": "<probe_ip>", 
"mac": "<probe_id>" 
}, 
"task": { 
"v": <task_version> 
}, 
"task_list": [ 
{ 
"task_id": "<task_identifier>", 
"banner_list": [ 
{ 
"ip": "192.168.1.100", 
"port": 443, 
"syn_ttl": 64, 
"tunnel": "ssl", 
"protocol": "https", 
"banner": "SFRUUC8xLjEgMjAwIE9LD...", // base64 
"ssl_ver": "TLSv1.3", 
"cert": "MIIFazCCBFOgAwIBAgISA+...", // base64 
"domain": "example.com", 
"url": "/api/v1/status", 
"banner_redirect": [ 
{ 
"banner": "SFRUUC8xLjEgMzAxIE1vdmVkIFBlcm1hb...", 

"url": "https://www.example.com/api/v1/status",

"domain": "www.example.com"

} 
} 
} 
] 
} 

The JSON data is compressed and sent encrypted via HTTP POST request to the C2 at the path /data/v2/pscan with the filename “attr.json”. This periodic push of compressed results that is distributed across thousands of nodes strongly favors high throughput for targeted scans, while maintaining minimal latency and low to moderate impact to the infected device performance.

JDY’s expansion shows how reconnaissance drives rapid exploitation

The expansion of the JDY botnet underscores how China‑nexus threat actors are scaling reconnaissance as a core enabler of exploitation. By distributing scanning and fingerprinting across thousands of compromised SOHO and IoT devices, operators can rapidly identify vulnerable infrastructure and targets of interest while evading traditional, IP‑based defenses.

JDY’s evolution from a supporting component of the KV‑botnet to an independent, high-performance reconnaissance capability demonstrates that disruption of individual nodes or clusters does not eliminate the underlying capability. The capability persists, adapts and continues to provide adversaries with timely targeting data, often within hours of vulnerability disclosure.

Black Lotus Labs will continue tracking the JDY botnet and related covert networks, sharing intelligence with partners, and integrating detections into Lumen DefenderSM to help reduce risk across enterprise, government and critical infrastructure environments.

How security teams can respond to covert scanning and exploitation risk

The JDY botnet underscores the risk of relying on traditional IP-based security controls such as geofencing, IP reputation-based detection, and static blocklists. The large number of U.S.-based SOHO and IoT devices that comprise the botnet allows operators to blend in with legitimate user traffic, making malicious scanning and reconnaissance activity harder to detect.

For network defenders, staying ahead of advanced actors requires integrating threat intelligence to track covert networks and other malicious infrastructure. At Black Lotus Labs, we have monitored the JDY botnet since 2022 and continue to add new IOCs to Lumen DefenderSM to protect our customers.

We recommend that enterprises:

Explore additional threat resources

Review these current IOCs and visit our GitHub page, which we update continuously.

For broader threat protection and insights, explore these resources:

Analysis of the JDY botnet was performed by Ian Goldin, Michael Horka and Steve Rudd, with technical editing by Ryan English.

Discover how Black Lotus Labs uncovers and tracks botnets like JDY to protect your organization from covert scanning and exploitation.

This content is provided for informational purposes only and may require additional research and substantiation by the end user. In addition, the information is provided “as is” without any warranty or condition of any kind, either express or implied. Use of this information is at the end user’s own risk. Lumen does not warrant that the information will meet the end user’s requirements or that the implementation or usage of this information will result in the desired outcome of the end user. All third-party company and product or service names referenced in this article are for identification purposes only and do not imply endorsement or affiliation with Lumen. This document represents Lumen products and offerings as of the date of issue. Services not available everywhere. Lumen may change or cancel products and services or substitute similar products and services at its sole discretion without notice. © 2026 Lumen Technologies. All Rights Reserved.

image
https://assets.lumen.com/is/image/Lumen/img-blog-featured-resource-card-bll?Creativeid=844b527d-b24a-4d66-928e-9d6964fc2220
https://assets.lumen.com/is/image/Lumen/img-blog-featured-resource-card-bll?Creativeid=844b527d-b24a-4d66-928e-9d6964fc2220
https://assets.lumen.com/is/image/Lumen/img-blog-featured-resource-card-bll?Creativeid=844b527d-b24a-4d66-928e-9d6964fc2220
Video thumbnail showing abstract blue and white light trails curving upward against a dark background, with small glowing particles scattered throughout. A red circular play button is centered on the image, and a time stamp of 1 minute 52 seconds appears in the bottom-right corner.
content
VIDEO
See how Black Lotus Labs® helps protect your business
link
Watch video
https://assets.lumen.com/is/content/Lumen/Black_Lotus_Labs_Video-6341053041112
_self
content
Related products

Defender

DDoS Hyper

Rapid Threat Defense