Researchers at Check Point recently discovered that the operator of a malware tool that breaks into mobile users' financial accounts was employing a novel new method to sneak its malware into Google's official Android Play mobile app store.
The method involved using Google's own Firebase platform for command-and-control (C2) communications and using GitHub as a third-party hosting platform for downloading the main malware. It allowed the attacker to fool and pass the security checks that Google conducts on all applications before they can be uploaded to its app store or downloaded on a device.
Check Point said its researchers in January discovered a new malware dropper hidden inside nine legitimate and known Android utility apps on Google Play store. The poisoned apps included several VPNs, a barcode reader, a music player, and a voice call recorder. "Those apps [were] based on open-source projects," says Aviran Hazum, Check Point's manager of mobile research. "The actor [could] just download the code, insert the malicious components, and compile the app."
When a user downloaded any of the weaponized apps — which Google has now removed from its Play store — the app would perform as expected even as it executed malicious activity in the background, Hazum said.
The researchers found that the dropper, called Clast82, was designed specifically to evade detection by Google's Play Protect scanning mechanisms during the app evaluation period. Once the evaluation was complete, the malware author essentially turned on the malicious behavior and got the dropper to install the AlienBot Banker and MRAT – two mobile malware families.
To achieve this, the malware operator used an account on Google's Firebase mobile app development platform as its C2 server. During Google's application evaluation period, the threat actor used the Firebase account to set a specific parameter in the dropper to a value such that its malicious capabilities were essentially switched off. Once Google had approved and published the app, the attacker enabled the parameter to trigger the malicious activity. "It just [didn't] drop any payload," during the evaluation process Hazum says. "Once the evaluation period ended, the actor [turned on] the malicious behavior."
Once enabled, the dropper downloaded AlienBot Banker from where it was stored in a GitHub account and changed the application's behavior completely. The threat actor created a new developer user-account and GitHub repository for each of the weaponized apps so they could distribute different payloads to devices that were infected by the apps.
Check Point described the second-stage AlienBot as malware-as-a-service for Android devices. The malware is designed to inject malicious code into banking and other financial applications to give attackers control of the account. Among its capabilities is a feature for bypassing two-factor authentication by intercepting and stealing SMS messages. MRAT, meanwhile, is malware that Clast82 downloads concurrently with AlienBot that allows a remote adversary to gain the same kind of control over a mobile device that a user actually holding the device would have.
Check Point's recent discovery is the latest reminder of how threat actors are continuing to find ways to upload malicious software to the official mobile app store of Google and, to a relatively lesser extent, Apple as well. Only last month researchers from Malwarebytes reported on how attackers had managed to insert malicious code in a new version of a very popular app on Play called Barcode Scanner. Millions of users are later believed to have installed the malicious version.
In recent years, both Google and Apple — the biggest players in the mobile space — have implemented numerous mechanisms for vetting applications before allowing them into their official app stores. In 2019, Google announced an alliance with ESET, Zimperium, and Lookout under which the three security vendors are working with Google to identify malicious and potentially harmful applications before they get published in the Play app store. Google's Play Protect, available by default on all Android devices since 2017, is a mechanism designed to help mobile users by scanning apps they download from Play for malware and other potentially harmful behavior.
"Google is invested in the fight against malware in their store," Hazum says. "But as can be shown by [the latest] campaign, it's not enough."