Thousands of Android Phones Preinstalled with Hidden Malware That Disables Google Play Protections

Security researchers have found firmware-level malware on thousands of Android phones in more than 150 countries. The threat, dubbed “Midnight Mimosa,” primarily affects low-cost devices and gives operators system-level control without requiring users to install an app or interact with a malicious link.

The malicious firmware can silently install and remove applications, load new code, and simulate advertising activity. Before delivering additional payloads, the malware temporarily disables the Google Play Store package and then restores it. Researchers interpret this as an evasion technique intended to reduce detection by Google Play Protect rather than evidence that Play Protect remains permanently disabled.

PolySwarm published a research report on Midnight Mimosa on October 19 describing the malware’s firmware-level access. Their analysis references an investigation by Bitdefender that tracked thousands of infected devices over an approximately two-year period.

Observed infection counts were highest in Mexico, France, and Italy, followed by the United States, Germany, Brazil, and Spain. These figures reflect observed infections, not definitive targeting decisions.

Thousands of Android phones ship with hidden malware

The infection begins with a malicious system app signed with an Android platform certificate. Because it holds a trusted platform position, the component can install and remove packages, grant permissions, and modify protected settings.

Previous incidents of preinstalled Android malware show that checking only user-installed apps is insufficient when a threat is embedded in device firmware.

The enabler conceals its core functionality inside a native library. When loaded, that library uses RC4 to decrypt a hidden Java framework. The framework contacts command-and-control servers, retrieves configuration, and downloads DEX or JAR plugin modules. These plugins allow operators to change the malware’s behavior without replacing the original system application.

Specific plugins perform ad-fraud and silent app management. Some create fake ad impressions, clicks, and conversion events by opening hidden windows and automating interactions. The visible apps used to mask this behavior include everyday utilities such as weather apps, app lockers, text scanners, and file managers; Bitdefender identified at least 32 such disguised applications in the larger payload network.

How the malware evades checks

Temporarily disabling the Play Store provides a window to install additional apps while attempting to avoid detection. Some malicious payloads also report Google Play as their installer even though they lack the Play-distribution signature block. That mismatch can help investigators differentiate between a claimed installation source and how an app was actually installed.

These findings expand earlier Midnight Mimosa research showing how a hidden firmware component persists while visible payloads change. In addition to firmware-installed components, researchers found 13 related ad-fraud apps distributed via Google Play; those apps shared infrastructure and indicators with the campaign but did not possess the privileged access granted by firmware placement.

The firmware enabler also contains routines tied to Accessibility, Notification Access, and SMS permissions, including methods that can enable sensitive access automatically. While researchers did not observe these permissions being used for theft, the malware’s ability to fetch and run new code means its future behavior cannot be judged solely on the ad modules already analyzed.

One payload includes proxy functionality capable of registering a device and opening two-way TCP tunnels. This could allow external traffic to traverse an infected phone’s internet connection. Researchers confirmed the capability but did not observe active traffic relaying during their documented tests; an initially reported control endpoint later proved to be a sinkhole.

The wider risk resembles abuses seen in malicious residential proxy networks, where compromised consumer devices are used to provide network access to third parties. That resemblance does not prove an operational link, but proxy features in Midnight Mimosa could expose homes or workplaces to traffic they did not authorize.

Affected devices included inexpensive MediaTek-based handsets, counterfeit flagship models, and phones reporting identifiers associated with Doogee and Cubot. Some firmware certificates contained identifiers linked to Shenzhen Zediel. Researchers were unable to determine exactly where in the supply chain the malware was introduced or whether the certificate owner knowingly participated.

Connections between Midnight Mimosa and other families such as Joker, Phantom, and Click are based on shared indicators but do not prove a single operator. Removing a visible app may leave the firmware enabler able to reinstall replacements, so cleanup requires addressing the underlying firmware rather than only removing individual payloads.

Google notes that its app safety checks scan apps during installation and perform periodic device scans, but this case highlights the need to also scrutinize trusted system components.

Indicators of compromise (IoCs)

Indicator type Value Reported role
Android package com.android.system.lite Initial firmware enabler
Android package com.mobile.applock.en Proxy-capable payload
Native library libeasy.so Unpacks the hidden framework
Plugin class com.wz.sdk.DxFactory Advertising fraud
Plugin class com.earnsdk.lib.DxFactory Silent application management
Plugin class com.gogo.third.lib.DxFactory Silent application management
Proxy component EnLoaderLib Device registration and TCP tunneling
Command-and-control domain api.weatherlive[.]world Core enabler communications
Download host oss.showtimetool[.]com Additional module delivery

The original report lists 40 sample SHA-256 hashes. They are reproduced here exactly as published; the report does not assign individual hashes to specific packages.

No. SHA-256
1 55605320099d8b351e9c0fbbe0b9806058ba644de9c1f384914b4f1445a028e9
2 97d37c33b2332072da7ca16d99ab047b64939745c82dab3b17e6b69f14ad8ada
3 e1b600dc014eed0e59e4345021ec0e9e210edf364fffdb655baeb4dc6c058822
4 819f87c7c310c4491192cd87bc1a3e65297c2133819b2b4f672204787693f87b
5 32b0dcb8429f6b049424ef08be58f641e2ba3b8292d38d0f7ebfdcd495b697df
6 731634848622ba0b32b03d03766d01990c1ce63c85b5a701e15dd2a96bd5f47e
7 5cd66605c1a299ac58a0686c2d52547d43d3eb60fcf7a2fc9474f5752ebb8105
8 1b423665896a40d31bc7feec8b0fa78d7f27552fd25f4a72917519feed3e59f5
9 e33624c0d69bc71c68ce5b84757efcd27943757c24f14d2abbff1c564587c104
10 4b3080c1cd2c669dff3144f332013dd6db0aaf1115e6b04efcb4e25fea884fd2
11 1fe24e80eed64eb28ea1d31e949445eaa85095e33a03e6bc835d688b81f40875
12 f67f5a4415ca63037f6a543a900ca622d13b169fced6064d91e7082e8557b53c
13 c38714cd8f77fca773d97b86c9a3122ef5e4991a6e70f901c64672cff8bf3956
14 8f35a3844b3bc3f5d44b278568bae8933e36cddb4e9074ad1b29a64e7c197e26
15 58b95add72b23acce491516c4d0eaa4291ff902199b806446587ed147dfd1a1e
16 3b8519d6412546c4c1c622e842e0d9b34a540169c974325d053ff227407133ad
17 70baca89bb6b76f26076c01c35cf531018064fe5ab3d6332312500e7c1def9e1
18 d434d6cb954d404789f652040d761b07e12aaae0129dc6c25ec1732afc5d92f3
19 63d2417f93b4e434d231f00cb9ba16e6636792a96e21acf1be76f411dd1c5ed5
20 543922608fa97dca7e13e70a8538ef60722d32069542551f218eafcee99e80fb
21 a427a8e3bfeaa66f017535669905763d7af1cf2c394d8ba80ebe3f489e2bb54f
22 980ee11f141ca4983c2e5457d48a994a61aa5a537c60d89a0999ce8a69996e0f
23 bcad5575a549137af0e44463b3cdda315848ed93c2ca6acf486dbc20c4f57f0c
24 a12844e4e1007ec143200d8192589593c22b6cf143ac51b320eabf08260ab2d4
25 88ee3c961ccd8dbad9c5e8f02da118caf1ead51fef0fcd4cebb311be3fd622a1
26 21d8ff68344b589d05626dce48a3b29573ee6c2e2a1ce81c392d69afd758c124
27 502090cf297cd5fbffe6caf57fed196e737c07075895cd26d93662c16c95c4fe
28 1fce280388341989856991b09d0a82b8872061b739641241bc30e57241a27dcb
29 4657191f26927e22018495a9e8da9044f76d0644d56eab0a553d57cc9735c63d
30 771744786d0da8a530cbfe921408a3ddb11af797dff3ad9716d9b57ef7ab48b5
31 53e1d7dc079dc2ffcff9fea9dccd23d9d206ffaede2274a2e6d8259c26b1a4a2
32 468d2d12ededba0733acc32b4a0da776fac592cdc5fdf49015728f4586322b79
33 e66d62bba82a5452fd9cb99a2b304c32f461cbc7f411a0fd555ae9db6ce34eec
34 880c7c369497fbc515b96eaea63c01d879895e1efc4b1ed71d58dd8e5aaf0284
35 3398bdb7180bc9d3c6755e6cd3ddb351c751e64c3bf346a1857cb2c1c7406483
36 207758bad044c25f89fabf78892aa0f845a9b44a73b7aa16fd1fab1139c2297a
37 6cb1b929dc98d6b1725fb4566a1b58bd3211c5da31697c962099ef585b1e7853
38 245b0b9b3583d37ae9eedac2665b09f656bd67f3985df0cdc0af9c7cd95bceed
39 1ba97892f9631d0609116325eace408a4d2b28ff8f0639a4303b5cff2fb6b4f9
40 3351728f6fba0c65d1c1c678e80c36ed7bdc8be1ea6bf85e826c27e689c3db07

Note: IP addresses and domains are intentionally defanged (for example, [.]) to prevent accidental resolution or hyperlinking. Re-fang only within controlled threat-intelligence platforms such as MISP, VirusTotal, or your SIEM.

Update defenses against new malware as soon as it appears. Integrate threat intelligence feeds with data from security operations centers to improve protection.

spot_img

More from this stream

Recomended