CVE-2026-66747: ENDLESSDOORS: Zbtlink Router rctl/kworker Phone-Home Root Implant
Zbtlink router firmware ships an embedded remote-control implant, ENDLESSDOORS, present in every published build across the product line. It is the open-source ycsunjane/rctl tool built in as an OpenWrt package (librctl.so), started at boot and run as root under the process name kworker to blend in with the kernel's [kworker/] threads. It opens no listening port; it phones home over cleartext TCP to a hardcoded command-and-control server (command channel 7000, interactive-shell callback 7001) with no authentication and no transport encryption, re-attempting contact roughly every 35 seconds. Its command handler passes any received string to popen() as uid=0, and a reserved rctlbash command returns an interactive root shell. Because the channel is unauthenticated and cleartext, control is not limited to whoever planted it: any party that answers at the C2 address, occupies the network path (DNS or route hijack), or acquires the hardcoded fallback domain obtains unauthenticated remote code execution as root.
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-66747?
CVE-2026-66747 has a critical severity rating of 9.8.
How do I fix CVE-2026-66747?
The recommended fix for CVE-2026-66747 is to update the Zbtlink router firmware to a version that removes the ENDLESSDOORS implant.
What systems are affected by CVE-2026-66747?
CVE-2026-66747 affects all Zbtlink routers that use the embedded librctl.so OpenWrt package.
What are the potential impacts of CVE-2026-66747?
The exploitation of CVE-2026-66747 could result in a complete compromise of the router allowing unauthorized remote access.
Is there a workaround for CVE-2026-66747?
Currently, no effective workaround exists for CVE-2026-66747 besides disabling the affected router until an official patch is released.