You might sideload an Android app, or manually install its APK package, if you’re using a custom version of Android that doesn’t include Google’s Play Store. Alternately, the app might be experimental, under development, or perhaps no longer maintained and offered by its developer. Until now, the existence of sideload-ready APKs on the web was something that seemed to be tolerated, if warned against, by Google.
This quiet standstill is being shaken up by a new feature in Google’s Play Integrity API. As reported by Android Authority, developer tools to push “remediation” dialogs during sideloading debuted at Google’s I/O conference in May, have begun showing up on users’ phones. Sideloaders of apps from the British shop Tesco, fandom app BeyBlade X, and ChatGPT have reported “Get this app from Play” prompts, which cannot be worked around. An Android gaming handheld user encountered a similarly worded prompt from Diablo Immortal on their device three months ago.
Google’s Play Integrity API is how apps have previously blocked access when loaded onto phones that are in some way modified from a stock OS with all Google Play integrations intact. Recently, a popular two-factor authentication app blocked access on rooted phones, including the security-minded GrapheneOS. Apps can call the Play Integrity API and get back an “integrity verdict,” relaying if the phone has a “trustworthy” software environment, has Google Play Protect enabled, and passes other software checks.
Graphene has questioned the veracity of Google’s Integrity API and SafetyNet Attestation systems, recommending instead standard Android hardware attestation. Rahman notes that apps do not have to take an all-or-nothing approach to integrity checking. Rather than block installation entirely, apps could call on the API only during sensitive actions, issuing a warning there. But not having a Play Store connection can also deprive developers of metrics, allow for installation on incompatible devices (and resulting bad reviews), and, of course, open the door to paid app piracy.
Google Pain Services. Google Pisses Itself API.
Well that fucking sucks
Was always inching closer, but looks like android has fully outstayed its welcome. The revolving door of executives hit its last person with any integrity on the ass on their way out the door.
I’m pretty new to this sort of stuff. I was planning to buy Google Pixel 8 sometime in November when they usually have sales. And install GrapheneOS. I never used this type of stuff before.
So will I have some trouble installing some stuff like some of mobile games, banking app, emails, etc? I’m in Canada if this help.
They’re still pissed that people won’t put up with their shitty YouTube app and use Revanced instead, eh?
That’s not on Google Play so it doesn’t affect it. I honestly don’t know what the point of this is.
Oh I see, so it only affects modded apks… They probably want to crack down on all those slightly-shady “spotify premium free”-apks.
No, it only affects vanilla apks where the dev implemented the check. For some reason the dev might forbid to run the app to users that side loaded the app instead of getting it from play store
Patched/modded apks are unaffected because the check is patched out
That seems likely. The question comes down to where the line should be drawn. Allow the apps the be installed and then when the data is eventually reported/found by the app owners to have them file law suits against those who are “stealing” from them, or to not allow the cracked application to be loaded in the first place, which is easily disguised as a security protocol because if an app has code in it that is not originally supposed to be there, it is very possibly a form of malware, which then can hurt the users in the long run or short run if it actually acts malicious and starts doing shit like old school viruses did on PC.
People want to say we own the device so we should be able to do whatever we want, but blatantly allowing people to install cracked apps with keyloggers onto their phones unintentionally will get them sued, and ultimately hurt how many people stay using their products.
Imagine every user and password with the site listed was suddenly just accessible by everyone. It would be a hellscape of credit card companies trying to stop accounts because you order 18 pizzas off the dominos app in Georgia, and another 13 sandwiches in the burger king app at the same time in Jersey.
We need to have the freedom to load apps we trust, but if you look at the standard user base, that’s who they have to make the phones for.
Could do something like make the users agree to terms by taking the phone into developer mode that makes them non responsible somehow? Might not hold up in court when they get sued though. “All the photos I took on my phone got shared online”
I think things are fine the way they are, we don’t need to interfere, unless for profits ofcourse.
People want to say we own the device so we should be able to do whatever we want, but blatantly allowing people to install cracked apps with keyloggers onto their phones unintentionally will get them sued, and ultimately hurt how many people stay using their products.
Imagine every user and password with the site listed was suddenly just accessible by everyone. It would be a hellscape of credit card companies trying to stop accounts because you order 18 pizzas off the dominos app in Georgia, and another 13 sandwiches in the burger king app at the same time in Jersey.
We need to have the freedom to load apps we trust, but if you look at the standard user base, that’s who they have to make the phones for.
It has been 16 years since Android came on the scene. Why do you think that these things are going to become such a big issue now in 2024 and beyond?
which cannot be worked around.
Well, at least not without root lol
Root detecting apps to Side loading detecting apps:
First time?
“root access is used to bypass security measures!!! We will make it harder to root your phones to keep your data safe” – Google
I installed FakeStore and set the app’s relevant
/data/system/packages.xml
properties from Aurora Store to FakeStore (installer="com.android.vending" packageSource="0" installInitiator="com.android.vending"
, the same as Google Play Store) and rebooted, which was enough to fool the public transport app I’m using. Is this the workaround you’re talking about, or does it require MicroG too?Yea that sounds about right, really hiding root is straight up magic as is (even though it’s a cat and mouse game lol) and achieving that is 98% of the hard work of hiding the fact an app has been sideloaded. Short of a complete overhaul from Google where they actually try that is.
Which, if I’m being honest, doesn’t seem like they are. It seems like a rather simple system all things considered. There’s no Playstore specific keys or signatures or file checks or hashs as far as I can tell. Its just a flag and checking if Playstore exists on the device at all
The only reason I’m still sticking with Android is the ability to sideload
I have no reason to use an android if this is the road Google wants to follow and expect my next phone to be an iPhone SE
May as well sideload on iOS~
I read through your tutorial. One thing it doesn’t mention(probably, ADHD means sometimes I skip a line or two and don’t realise) is if there’s a lower limit for iOS version. Does it assume the person following along has a device <X years old?
Works fine on latest version.
What’s the oldest version it works on?
I am not really sure, iOS 13 I suppose?
Cool, thanks.
The only caveat is you Gotta pay yearly $99 for dev account or be limited to 3 apps.
Looks like you’re someone who doesn’t read but it uses DNS filters to use revoked certificates.
I’m in this boat. I really liked using Android and tinkering with it. If I do so now I cannot even use my banking app without doing aftercare each update
I just won’t use any apps that do this. Simple.
I already have to do this. My office wants everyone to use the MS authenticator app, won’t run on LineageOS. Even if it did, I wouldn’t install it, but still.
Ended up making them purchase a hardware security key for me instead.
Good luck when banking apps start doing this.
personally, i wouldn’t trust a third-party created app with my banking details. what’s more, i’ve removed all banking apps from my phone.
i don’t need to allow access to my finances on the device which is most likely to get pinched out of everything i own. plus google and apple don’t need to know which banks have accounts of mine.
imo that additional inconvenience to conduct all banking transactions from a browser is worth the candle.
Oh shit…
I’ll be real, I wouldn’t trust a banking app from any third-party storefront to begin with. That’s the sort of app I’d really want to be properly vetted and secured.
When did Google start verifying security on play?
Play Protect has been around for a few years now and will disable apps it detects that are abusing user data.
My point is, it doesn’t do much, if anything.
deleted by creator
aww man is that still a thing ( as in working )
If you’re using a custom de-googled rom you don’t have the play store, so this would just gut that functionality :/ same for any other app that decides they need this, which if the past is anything to go on is going to be a ton of apps that really don’t need it
But, there’s no difference in security between using a different storefront? The difference in security depends on the app itself, not where it was downloaded from.
Assuming the app is legitimate, sure. But unless you can verify the code, yourself, then you’re having to trust that the source you download from hasn’t altered the APK in some way. That’s a pretty big risk for most people when it comes to finance apps.
APKs are signed, you can verify the integrity of an APK. If you have a previous version of an app installed, a new version with incorrect signature won’t even install.
Yeah but I mean if your bank would offer their app through F-Droid as an addition to Google Play, there is no reason to assume the app suddenly got less secure because of that.
Removed by mod
Cash. No app part. Just cash.
Yeah until the cops pull you over and take your cash under civil asset forfeiture because it’s “suspicious that you have so much cash on hand”.
I knew a dev once that absolutely refused to use banks. I’m a populated California city. With security cameras all over outside, everywhere. Buried cash in Mason jars. We lost touch but I always wondered how that worked out.
There’s no way my broke ass would ever have that much cash.
Do we really need banking apps? Fuck it I’ll use their website.
The features you miss out on would be direct deposit from checks and app notifications (usually there are a few that you want enabled but are only available through the app).
Most banks I’ve used allow SMS notifications for things like deposits and purchases.
The check things is true but I need to use it like less than once a year so eh.
There’s an app to make web apps icons. Or just use Firefox to add the bookmark to your homepage
Some places are ditching the website and going app-only. Stockpile as an example.
Good that most apps I use now are open source but for those few that I still get from Aurora Store it might be a death sentence but perhaps this API could be spoofed?
From where does the aurora store get the binaries?
From the Play store
Can we do anything ?
Custom ROM or just go back to a flip phone.
It’s only going to get worse with the big players from this point on.
I honestly think I’ll be getting a feature phone next time. I’ll keep an old smartphone just for Android Auto and that’s it.
Some time ago, I looked at kaios devices, and they looked really cool. I only didn’t get one because I need to use some banking apps only available for android
The EU is going to be furious about this
I hope so. I don’t want Android to become the new Apple
Nah, I doubt it. The app developers are freely adding this themselves.
The EU should limit Google giving developers this ability is what they mean
I also dislike DRM but I don’t think it makes any sense to make it illegal.
This explains why I couldn’t install retroarch on the GalaxyS24 Ultra of a friend via apk or google play store. Would not work, but somehow the Galaxy store version worked….
Haha, gross: We can’t control the devices we own.
I genuinely don’t even know where to buy an affordable device that is free from this kind of control. Some company always has outsized control (and in some cases arguably surveillance) over anything you can find on the market. It sucks so bad.
Ironically, it might be Pixel + Graphene
How tricky is this to install and use? I have a samsung and use lots of the usual apps. Wondering if it would be feasible for that purpose.
Haven’t tried yet but it’s becoming increasingly appealing to me lol
Lucky Patcher?
It’s not like dedicated people aren’t going to be able to just patch out the calls to this API from the apps themselves…
This feels like yet another attempt at DRM that is doing more harm than help.
You mean like literally every single attempt at DRM since the Big Bang?
Why would that be possible? Wouldn’t the developer have their server rejected any calls from “unsigned” apps?
If functionality exists in the client app, there’s nothing to be done to stop someone from bypassing checks.
Looking into it further this looks like it’s an API between the backend of a service and Google though. That would be difficult to defeat, but you could probably spoof the identity of the requesting device with enough effort
Possibly, but many apps don’t actually need to phone home to function.
Of course that doesn’t stop developers arbitrarily requiring it.
Indeed, I already bypass SafetyNet and Play integrity with some kind of xposed module, I don’t expect this to change.
Whoa, is Xposed still a thing that works? Had to use Magisk instead to get the safety net stuff working on Lineage OS android 11
Xposed is just an API which is provided by the LSPosed Magisk module.
Huh…the more you know. I just assumed Magisk was a spiritual successor, apparently I misunderstood how any of it works.
Can you tell me which modules you use? I am trying to pass SafetyNet on Waydroid but can’t pass even basic integrity.
I’ve used Magisk with the safetynet module + hiding root from apps with like a 95% success rate. Quick search for “magisk safetynet” and look at the xdadevelopers threads
idk where I got it from, but it’s called “Universal SafetyNet Fix” by kdrag0n
Did you just install the module and passed safetynet or did you have to use custom fingerprint? Also are you on custom or stock rom?
Don’t remember, sorry
Am on e/os/