
Threat Advisory • Attack Report • Admiralty Code A1
The Tengu botnet builds on Mirai's foundations but adds fileless execution, watchdog-abuse persistence, and anti-analysis defenses that make Tengu one of the most resilient Linux IoT malware families observed to date.
TA2026217
Date of Publication: July 31, 2026
Admiralty Code: A1
First Seen: July 2026
Targeted Regions: Worldwide
i386, amd64, MIPS, ARM, PowerPC, m68kSummary
The Tengu botnet is a Linux malware family built on the foundations of Mirai but engineered to be far more sophisticated in how it hides and defends itself. First seen in July 2026, Tengu targets Linux embedded and IoT devices worldwide, with samples compiled for i386, amd64, MIPS, ARM, PowerPC, and m68k architectures, and Android is also listed among targeted platforms. In the observed case, infection did not stem from a software vulnerability; instead, Tengu spread by brute-forcing an exposed remote-management service protected only by weak or default credentials, making poorly maintained IoT and embedded Linux devices the natural target for this attack.
Attack Details
Brute-force initial access and architecture-matched delivery
Tengu shares roots with Mirai but goes considerably further in stealth and self-defense. Infection began with a brute-force attack on an exposed remote-management service using weak or default credentials — no vulnerability, vendor, or device model was involved. A short shell script then pulled down builds matching the target's processor architecture, with versions available for common desktop, embedded, and legacy platforms, making exposed and poorly maintained IoT and embedded Linux devices the natural target for the Tengu botnet.
Fileless execution and continuous anti-analysis
Once running, Tengu decodes its command-and-control address in memory and immediately works to hide itself. It copies its own executable into an anonymous memory-backed file, relaunches from there, and disguises the process name so monitoring tools display it as a legitimate system logging daemon. It hardens itself by ignoring termination signals, disabling core dumps, and instructing the kernel not to select it for termination under memory pressure. Anti-analysis checks run continuously: Tengu exits if a debugger is attached or library-injection variables are present, uses instruction-timing measurements to detect emulation, and periodically hashes its own executable code to detect tampering. All sensitive strings are stored encrypted and decoded only at runtime.
Multi-layered persistence and watchdog abuse
Persistence is where Tengu diverges most from ordinary Mirai variants. A detached guardian process checks the main process every minute and relaunches it if it disappears. On instruction from the server, Tengu can install itself as a fake system service, hook into legacy startup mechanisms, infect shell login scripts, and mark its own binary immutable. Its most aggressive layer abuses the hardware watchdog timer: a background worker disguised as a kernel thread arms the watchdog with a short timeout and sends keepalive signals only while the malware is alive.
Reboot-forced anti-remediation and rival malware suppression
If a defender kills the Tengu process, the keepalives stop and the device reboots, converting a hardware safety feature into an anti-remediation trap that gives the other persistence layers another chance to run. Tengu compounds this by corrupting the reboot and shutdown utilities an administrator would normally use to restart or safely power down the device. It also hunts competing malware, scanning running processes against known rival patterns and killing matches along with their child processes, watching for new process creation so it can react within a fraction of a second.
Capability without confirmed reach
The available intelligence on Tengu describes capability rather than confirmed reach. No operator, campaign, infection count, targeted sector, region, or confirmed victim is identified, no Android infections were documented despite the delivery path, and there is no evidence that the command-and-control server ever issued commands or was reachable. Independent telemetry confirms only that malicious Mirai-related files were hosted at the same address for several weeks before going offline.
Recommendations
Detect fileless execution paths on embedded hosts
Alert on memfd_create usage producing anonymous executable mappings and on unlinked files under /dev/shm, particularly names resembling system daemons such as .journal. These paths are how Tengu runs without a durable on-disk artifact to scan.
Plan remediation around a forced reboot
Assume that killing the Tengu process will cause the device to reboot within roughly 30 seconds via the hardware watchdog. Sequence responses so persistence removal, forensic collection, and network containment complete before process termination, or isolate the device at the network layer first and treat the reboot as expected.
Verify reboot and shutdown utilities before relying on them
Check the integrity of reboot- and shutdown-related binaries on suspected hosts, looking for ELF headers overwritten with the string ELFOOD. Recovery procedures that depend on those utilities may fail silently, so prepare out-of-band power control or firmware reflash as a fallback.
Audit every persistence location before returning a device to service
Review systemd unit files under /etc/systemd/system, init.d and rc.d scripts, procd and rc.local, shell startup files including .bashrc, .profile and /etc/profile, and cron-related paths. Also check for binaries marked immutable with chattr +i. Tengu installs several persistence mechanisms independently, so removing one leaves the others live.
Treat reinfection after cleanup as expected and reimage where possible
Where firmware reflash or factory reset is feasible on a confirmed-infected device, prefer it over selective cleanup. The combination of a 60-second guardian process, multiple boot-time persistence mechanisms, and watchdog-forced reboots makes partial remediation of Tengu likely to fail.
Indicators of Compromise (IoCs)
| Type | Value |
|---|---|
| IPv4 | 64[.]89[.]163[.]8 |
| IPv4:Port | 64[.]89[.]163[.]8[:]9931, 64[.]89[.]163[.]8[:]8080 |
| SHA256 | 897226af37990fa60f25fea00b0509faa0e78d8bee10875c23b9b6ab0b8faed9 |
| SHA1 | caef4358921486cea54333bdcde3b61c845deb9c, 097522a52986982b9eefc29f95efdd9d3b6032e7, b6d406992411dad0ef80f2b7b61427448bd05540, 144521ad3baf1fc28ceb4ad26d6fe490ab1b31f4, 0243692ce6ca522bc1359a3d89d70a229cf76587, 01c3326ce5beb78a6c106960a3a0868682b97bfa, 197652174622cda52435249bc96a2d82b3613194, da040700e8c0852eaa848fb01138e5b820c6c765, b249800066433c0a8bf23edae719133465247abc, 0750489645d263efde56189be97c045cfc8ca890 |
| File Path | /tmp/.proxy.pid, /tmp/.up, /dev/shm/.journal, /etc/init.d/tengu, /dev/watchdog0 |
| Filename | systemd-journal |
| Encryption Key | c2a1b84d9f73512e8a6c15f0b4d9e73b114a66895dc328927e34a5b148ce6103 |
MITRE ATT&CK TTPs
References & Patch Links
What Next?
At Hive Pro, it is our mission to detect the most likely threats to your organization and to help you prevent them from happening.