跳转到内容

Android devices ship with firmware-level malware

Keenadu malware gives an attacker control over a device but appears to be used primarily to facilitate ad fraud

In late February 2026, SophosLabs analysts identified multiple detections on Android devices for malicious activity associated with the Keenadu backdoor. According to Kaspersky, Keenadu is a firmware infection embedded in the libandroid_runtime.so (shared object library) that injects itself into the Zygote process. As Zygote is the parent process for all Android apps, an attacker effectively gains total control over an infected device. Keenadu acts as a downloader for second-stage malware modules that can be used to target the data in multiple applications. All Android apps rely on libandroid_runtime.so to run, so a copy of Keenadu is copied into the address space of every app installed on an infected device.

The code for Keenadu is located in a static library (libVndxUtils.a) on an infected device and relies on a malicious dependency that masquerades as legitimate MediaTek code. Based on artifacts associated with Keenadu’s deployment, Kaspersky concluded that it was “integrated into the firmware during the build phase” in a supply chain compromise rather than subsequently installed through a compromised OTA (over-the-air) server.

The apps the malware targets depends on the modules the attacker chooses to download. Examples include storefronts like Shein, Temu, and Amazon. YouTube, Facebook, and the Digital Wellbeing app are all targeted with “clicker” modules, which perform ad fraud by silently connecting to websites in the background to generate pay-per-click revenue. Another clicker module is embedded in the system launcher (com.android.launcher3) and appears designed to monetize each installation. One module targets the Google Chrome browser.

The infected devices detected by Sophos consistently involved two system-level APK files: PriLauncher.apk and PriLauncher3QuickStep.apk. These files were in system-level directories (e.g., /system/system_ext/priv-app/PriLauncher3QuickStep/PriLauncher3QuickStep.apk). QuickStep is the default Android system launcher and a core component of the Android Open Source Project (AOSP). The detections of these APK files as malicious suggest that these components were trojanized to run Keenadu on certain devices. The Sophos Intercept-X endpoint agent for Android does not block legitimate QuickStep versions.   

As of March 4, Sophos X-Intercept telemetry listed over 500 unique compromised Android devices across nearly 50 models. The devices were mostly low-cost models produced by the following manufacturers: Allview, BLU, Dcode, DOOGEE, Gigaset, Gionee, Lava, and Ulefone. The list did not include Alldocube devices, despite Kaspersky reportedly observing Keenadu affect that manufacturer as well. The identified infections were spread globally, with devices located in 40 countries. 

Organizations that allow users to access corporate resources from personal devices are at elevated risk. Although data exfiltration is from the device itself, threat actors could access a corporate network via exposed credentials stored in apps on the infected device.

SophosLabs analysts recommend following the steps outlined in knowledgeable article KBA-000047016. Android users should install updated firmware if released by the vendor. Until the firmware has been updated, organizations should consider restricting affected models from accessing the corporate network.

The following Sophos protection relates to this threat:

  • Andr/Bckdr-SBS

The threat indicators in Table 1 can be used to detect activity related to this threat. Note that IP addresses can be reallocated. The domains and IP addresses may contain malicious content, so consider the risks before opening them in a browser.

IndicatorTypeContext
11eaf02f41b9c93e9b3189aa39059419MD5 hashKeenadu-infected BLU Bold K50 firmware (PriLauncher3QuickStep.apk)
7db58b72a3493a86e847c3685eca74c690d50b55SHA1 hashKeenadu-infected BLU Bold K50 firmware (PriLauncher3QuickStep.apk)
52db1f284a0dccbb750314cf765131a17a8284a2aeea04701a2b71f35fb9d9eeSHA256 hashKeenadu-infected BLU Bold K50 firmware (PriLauncher3QuickStep.apk)
3c03168c98ad6111c3aa0a960f8b7eeaMD5 hashKeenadu-infected BLU G84 firmware (PriLauncher3QuickStep.apk)
dcf2b51bfc43494bb27f5da26f3f706ca878d17eSHA1 hashKeenadu-infected BLU G84 firmware (PriLauncher3QuickStep.apk)
cdf1d41d732ba882184060933bec2c1f4b8eefc081c06471132a690f2205da31SHA256 hashKeenadu-infected BLU G84 firmware (PriLauncher3QuickStep.apk)
cb0d514d86ddfaf4345d25cef064863bMD5 hashKeenadu-infected Ulefone Armor 22 firmware (PriLauncher.apk)
b73c94e56932f607108ec1efb74004c763a9e42bSHA1 hashKeenadu-infected Ulefone Armor 22 firmware (PriLauncher.apk)
ab6d744dccf4c6266474df4b8aa3be6ae5663dbee39c579a552a4cfa1c1d12fdSHA256 hashKeenadu-infected Ulefone Armor 22 firmware (PriLauncher.apk)
cd619b4e1e793f96eca877616a741bc1MD5 hashKeenadu-infected Ulefone Armor X13 firmware (PriLauncher.apk)
c33b025bac789d3742278f784377fc36f83fd1ffSHA1 hashKeenadu-infected Ulefone Armor X13 firmware (PriLauncher.apk)
da1c7f53add0abaa8a49b773e5cea9c9171799f644ec24e366aaf7ce29962a11SHA256 hashKeenadu-infected Ulefone Armor X13 firmware (PriLauncher.apk)
b80b39ed95d54c8c1bf12e35f92e23ccMD5 hashKeenadu-infected Ulefone Armor 24 firmware (PriLauncher3QuickStep.apk)
7eb32a90d556bb9954707014843a67f7039ea7f1SHA1 hashKeenadu-infected Ulefone Armor 24 firmware (PriLauncher3QuickStep.apk)
34a0236b5c7b47577be4501e2c18908916ef9ec22032a6ea41b0ecceaf4e8d8aSHA256 hashKeenadu-infected Ulefone Armor 24 firmware (PriLauncher3QuickStep.apk)
playstations[.]clickDomain nameC2 server for Keenadu backdoor
uscelluliar[.]comDomain nameC2 server for Keenadu backdoor
gstatic2[.]comDomain nameC2 server for Keenadu backdoor
glogstatic[.]comDomain nameC2 server for Keenadu backdoor
ytimg2[.]comDomain nameC2 server for Keenadu backdoor
gmsstatic[.]comDomain nameC2 server for Keenadu backdoor
gsonx[.]comDomain nameC2 server for Keenadu backdoor
keepgo123[.]comDomain nameC2 server for Keenadu backdoor
sliidee[.]comDomain nameC2 server for Keenadu backdoor
newsroomlabss[.]comDomain nameC2 server for Keenadu backdoor
fbgraph[.]comDomain nameC2 server for Keenadu backdoor
dllpgd[.]clickDomain nameC2 server for Keenadu backdoor
gvvt1[.]comDomain nameC2 server for Keenadu backdoor
proczone[.]comDomain nameC2 server for Keenadu backdoor
goaimb[.]comDomain nameC2 server for Keenadu backdoor
aifacecloud[.]comDomain nameC2 server for Keenadu backdoor
gbugreport[.]comDomain nameC2 server for Keenadu backdoor
tmgstatic [.]comDomain nameC2 server for Keenadu backdoor
fbsimg[.]comDomain nameC2 server for Keenadu backdoor
launcher[.]szprize[.]cnDomain nameC2 server for Keenadu backdoor
iboot[.]siteDomain nameC2 server for Keenadu backdoor
67[.]198[.]232[.]187IP addressC2 server for Keenadu backdoor
67[.]198[.]232[.]4IP addressC2 server for Keenadu backdoor
110[.]34[.]191[.]82IP addressC2 server for Keenadu backdoor
110[.]34[.]191[.]81IP addressC2 server for Keenadu backdoor

Table 1: Indicators for this threat