Software

Applications

Google Play puts Android apps on notice: No naughty JavaScript, Python, Lua

And come April next year, accurate disclosures of personal data usage will be required


Google's pending Play Store policy changes are bringing various privacy improvements – but also include a security enhancement and disclosure requirement that deserve mention.

First, there's a specific ban on the deceptive use of interpreted languages like JavaScript, Python, and Lua. This is more of a refinement and tightening of prior policy than a new rule.

Starting October 15, 2021, Google said, "We're clarifying the Device and Network Abuse policy to prohibit apps or SDKs with interpreted languages (e.g., JavaScript) loaded at run time from violating any Google Play policies."

Previously, the web titan's Device and Network Abuse policy gave it broad latitude to take action against apps that "interfere with, disrupt, damage, or access in an unauthorized manner the user’s device, other devices or computers, servers, networks, application programming interfaces (APIs), or services."

Google's policies also forbade Google Play apps from modifying or updating themselves outside of Google Play's update system and from introducing or exploiting security vulnerabilities.

Fetching executable code from sources other than Google Play is also disallowed, except for code running in a virtual machine that has limited access to Android APIs, like JavaScript running in a WebView or browser.

While Google's policy language generally provides a rationale for dealing with most sorts of app misbehavior, the addition of a specific prohibition on interpreted languages like JavaScript, Python, and Lua suggests a need to address persistent abuse.

Google declined to explain why it is implementing the policy enhancement, but research findings published by Snyk last year offer a possible rationale. The security firm reported that the Mintegral advertising SDK – integrated by Android and iOS app developers into their apps to serve ads – misused various native platform APIs as well as JavaScript code on iOS to conceal the capacity for malicious behavior.

"We discovered the MTGBaseBridgeWebView class, used everywhere in the [iOS] SDK to communicate with JavaScript, acts as a backdoor, allowing for the invocation of arbitrary functions from the native application code," Snyk said in an October 2020 post. That was a follow-up to its initial findings in August 2020, which Mintegral denied.

According to Snyk, Mintegral removed the MTGBaseBridgeWebView code following the publication of the security firm's findings and the China-based ad-tech biz has since posted about its support for Apple's SKAdNetwork attribution API – suggesting it may have remedied the alleged rules violations.

We asked Apple and Google whether Mintegral's SDK currently complies with their respective store policies, but we've not heard back.

The point, however, is that JavaScript in the past has been employed to flout app store rules. The possibilities of this approach were demonstrated at the Black Hat security conference in 2012 when Trustwave SpiderLabs researchers Nicholas Percoco and Sean Schulte described how they found a way to use a WebView-based JavaScript bridge to communicate with native Android APIs. This allowed them to enable malicious functionality after being scanned by Google Play's "Bouncer" malware scanner.

Starting in mid-October, there will be a specific prohibition against the misuse of interpreted languages. And maybe it will help, if Google makes the effort to enforce its rules.

Developers must provide accurate information related to personal or sensitive user data their apps collect, use, or share

The other noteworthy policy change is that personal data usage in Google Play apps must be disclosed and must be accurate. Google's current User Data policy implies but does not explicitly demand accuracy – a requirement spelled out in separate Misrepresentation and Deceptive Behavior sections.

"We’re adding a new Data privacy and security section to the User Data policy where developers must provide accurate information related to personal or sensitive user data their apps collect, use, or share," Google said.

This is to be accompanied by a privacy policy in the app and in the Google Play Console.

The accurate disclosure requirement takes effect on April 1, 2022, which in the US, the UK, and various other countries, is known as April Fool's Day. ®

Send us news
11 Comments

Chrome Enterprise Premium promises extra security – for a fee

Paying for browsers is no longer a memory from the 1990s

Google Cloud chief is really psyched about this AI thing

We're on a highway to ML

Rust developers at Google are twice as productive as C++ teams

Code shines up nicely in production, says Chocolate Factory's Bergstrom

Google will delete data collected from 'private' browsing

Declares victory in settlement of class action lawsuit, but individual claims remain possible

Google One VPN axed for everyone but Pixel loyalists ... for now

Another one bytes the dust

Google joins the custom server CPU crowd with Arm-based Axion chips

Neoverse V2 cores available in GCP later this year

Google sues app devs, claims they're Play Store crypto scammers with 100k+ victims

The pair allegedly made 87 apps since 2019 and defrauded folks of tens of thousands of dollars

In-app browsers are still a privacy, security, and choice problem

Regulators reminded that longstanding concerns haven't been addressed

Google bakes new cookie strategy that will leave crooks with a bad taste

Device Bound Session Credentials said to render cookie theft useless

Microsoft's playdate in Google's Privacy Sandbox gets messy

Targeted ads in Edge may be blocked before they even arrive

Japan turns up heat on Apple, Google with threat of hefty fines

Antitrust proposals could stretch to 30% of annual revenues for law-breaking app store monopolies

Boffins deem Google DeepMind's material discoveries rather shallow

Web titan rejects criticisms, insists AI-found compounds are legit