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.

