There are many good reasons why it’s often best for organizations looking to deploy or consume Android applications to use the Google Play mobile apps store.
The discovery of a high-profile flaw in one of the world’s most popular games highlights why you should stick to apps in Google Play. Epic Games’ Fortnite is played by millions of players around the world on different platforms, including Android. Fortnite, however, isn’t available on the Google Play store for Android; rather, Epic Games decided to bypass Google and use a third-party store to deliver its game. That fact, however, didn’t stop Google from discovering a serious vulnerability that was publicly disclosed on Aug. 25.
“Any app with the WRITE_EXTERNAL_STORAGE permission can substitute the APK immediately after the download is completed and the fingerprint is verified,” Google warned Epic Games in a discussion that began on Aug. 15. “This is easily done using a FileObserver. The Fortnite Installer will proceed to install the substituted (fake) APK.”
APK is the default Android package format, and Epic Games is using it to deliver Fortnite. Rather than provide a full installation of its software, Epic Games instead first uses an installer application that pulls the required APK. Google’s research found that the process used by Epic Games didn’t properly secure the APK installation process, potentially enabling an attacker to deliver malicious code.
The attack vector that Google reported is referred to as a man-in-the-disk (MITD) attack, which is an attack vector that abuses the way that Android applications use storage resources. It was first publicly disclosed by cyber-security firm CheckPoint on Aug. 12.
“Careless use of External Storage by applications may open the door to an attack resulting in any number of undesired outcomes, such as silent installation of unrequested, potentially malicious, apps to the user’s phone, denial of service for legitimate apps, and even cause applications to crash, opening the door to possible code injection that would then run in the privileged context of the attacked application,” CheckPoint wrote.
Epic Games responded to Google’s claims and had a fix in place on Aug. 16.
“This patch changes the default APK storage directory from external to internal storage, which should prevent MITD attacks during the install flow,” Epic’s InfoSec team wrote.
Epic requested that Google not disclose the issue for 90 days to allow users enough time to patch their installers. Google responded to Epic Games on Aug. 24, noting that the patch had been available for seven days and the information on the vulnerability would be publicly disclosed.
As part of the Google Play store, Google performs various security checks to help protect Android users. By bypassing the Google Play store, Epic Games does not have to pay a percentage of its sales to Google, but it misses out on some of the protections that Google provides. To install Fortnite, a user must enable the “Install Unknown Apps” flag in Android, which opens up users to risks from unknown, unverified apps that could come from any source outside of Google Play. Certainly there have been applications inside of Google Play that have had risks, but they are typically outliers and addressed rapidly by Google.
Fortnite has enough of an install base that Google took the prudent action to look at the software installer for potential risks, but what about lesser known software applications? No doubt there are other non-Google Play apps that are at risk of MITD attacks. Enterprise users and consumers alike would be well-advised to think twice before opening up Android to the risks that lie beyond the confines of the Google Play app store.
Sean Michael Kerner is a senior editor at eWEEK and InternetNews.com. Follow him on Twitter @TechJournalist.