On non-rooted Android 17, ADB uninstall of system apps fails

Posted by microtonal 22 hours ago

Counter215Comment173OpenOriginal

Comments

Comment by develoopest 17 hours ago

I don't understand why ensuring general-purpose computing is not a priority of the European Union.

All that talk about sovereignty, and we are giving full control of our digital lives to 2 American companies.

Comment by littlecranky67 15 hours ago

Because the EU wants attestation for age verification, digital surveillance and censorship, not free software platforms that wont implement any of those.

Comment by pbasista 15 hours ago

EU does not want that.

Only a few politicians, some of whom happen to be currently in power, in the EU or elsewhere, are pushing for those agendas. But fortunately, they do not represent the majority.

Comment by littlecranky67 14 hours ago

Bank account register, EUDI Wallet, Chat Control, digital Euro… They might not be the majority but they manage to go through with all of this.

Comment by throw-the-towel 15 hours ago

If the majority is unable to do anything then their opposition doesn't really matter.

Comment by monegator 14 hours ago

lobbyist from the usual american companies are convincing "politicians" to sponsor those bills.

Comment by Grimeton 10 hours ago

This.

These things wouldn't go away if the EU or a company within the EU would provide a phone OS.

They would just serve different masters.

Comment by vincnetas 17 hours ago

Well that was the original android phone idea. Get a hackable open device that you can write apps for your self. Even attach third party hardware to it for extra functionality with lots of customisation. But this idea has mutated quite a bit.

Comment by mosura 16 hours ago

Even by 2015 the noise in Google was “the Chrome OS model is better” with reference to them centrally controlling everything.

Andy Rubin was no saint, on so many levels, but when he was removed from Android leadership and the Chrome culture effectively took over this was always how it was going to go.

Comment by dainiusse 16 hours ago

I fully agree with it. But I think Google also understands that the platform is unatractive for businesses. In my case I just don't do Android app because I know it is easy to just take and hack. It is not the case on iPhone. And my app is one time payment so the ability to just copy out the APK leaves me not doing an app at all...

Comment by Jean-Papoulos 15 hours ago

The people that go through the trouble of installing apks from random websites to not pay $1 are in the minority. What's more, most of them wouldn't pay that dollar if they couldn't find the cracked apk. So the only thing you're realistically doing is cutting yourself off of a huge market. Convenience sells, the Play Store does that

Comment by dainiusse 14 hours ago

$1 - most probably. What about $20?

Comment by Eueudhsbsj32 10 hours ago

Unless your target market is a small niche of hackers, then yeah the vast majority would pay $20.

Just look at how many pay for music and video streaming services, when it's trivial to download anything for free from illicit sources.

Comment by _imnothere 16 hours ago

> I know it is easy to just take and hack

No you don't, otherwise we wouldn't have banking apps on it.

Comment by dainiusse 15 hours ago

It is a bit different. My app doesn't rely on 3rd party services at all. It just provides functionality. It is not about breaking into someones account.

I just know that the app can just be cracked - there are plenty of sites that do that for android. Because you can't just load your app on iOS - this is just not possible (well perhaps there are a few percent of some jailbroken iPhones, but that is neglibile).

On Android though, you can soon see such app stolen and on some of the apk warez sites. It just breaks the model.

Comment by stevefan1999 15 hours ago

> On Android though, you can soon see such app stolen and on some of the apk warez sites. It just breaks the model.

Think about Windows and software privacy

Comment by kmeisthax 14 hours ago

The only difference between iOS and Android when it comes to loading code onto your device is that, on iOS:

- You have to setup a developer account with Apple first, and dev-signed apps can only be installed onto specific provisioned devices only[0]

- The free tier of that developer account is inconvenient for actually using dev-signed apps as a daily-driver, and won't let you use certain entitlements

- Apple's dev tooling is designed to make it feel like you can only sign code you're compiling yourself

On the surface level, this might seem like a big difference, because Android has a command that lets you load arbitrary APKs with no particular fanfare or ceremony, while Apple's dev signer is buried inside of a compiler/IDE suite. But people have built tools to make it easy to take an arbitrary .ipa, sign it using your dev account, and resign it once the free tier's 7 day limit expires.

Of course, this still requires you actually go and obtain an .ipa of the app you want to use, and Apple distributes App Store[1] app binaries[2] encrypted. That part requires actually having a jailbroken device to dump the app binary with. But once the app is cracked anyone can install it.

If you want an actual "uncrackable" app you need to put a critical part of your app's workflow onto a server, and then have your app send an iOS DeviceCheck or Google Play Integrity attestation that the phone is running the actual App Store/Google Play version of your app. But that's also incredibly draconian behavior towards your customers as it basically forces your app to be always-online... which is why a disturbingly high number of games do this.

[0] Yes, I know about Enterprise signing, but Apple specifically forbids distributing Enterprise-signed apps outside of your organization and those apps get revoked all the time. Signing with your own dev account is way more robust and that's what most iOS power users actually use.

[1] I have no clue if FairPlay encryption applies to EU-DMA-compliance signed apps.

[2] ONLY binaries - all your resources are unencrypted and can be downloaded off the App Store CDN and inspected by anyone. Code signing signatures do apply to resources, AFAIK

Comment by kotaKat 14 hours ago

> Because you can't just load your app on iOS - this is just not possible (well perhaps there are a few percent of some jailbroken iPhones, but that is neglibile).

No, smart normies are sideloading with the 7-day limit and leveraging automation to have their pirated apps automatically re-sign and re-push. If you pay the $99 to Apple for a dev cert (or like $10 to a service that'll sell you a cert off someone's account), it'll even just sign out for the year for you. No screwing with Xcode or anything, just drag-drop-sign. Even gives you the options to patch the app out at resigning so you can do hacks and mods like the good old jailbreak days.

https://sideloadly.io/

Comment by graceful6800 16 hours ago

Have you tried extracting, decompiling, and modifying someone else's app?

It wasn't hard before LLMs and it's nearly trivial now.

Comment by skinfaxi 15 hours ago

Is that not possible with ios applications?

Comment by Xirdus 15 hours ago

You can't sideload iOS applications. Meaning there's no point to doing any of the listed things.

Comment by drdexebtjl 15 hours ago

Of course you can. How do you think developers test their apps?

Comment by Xirdus 12 hours ago

Never did iOS development. I always assumed it requires active USB connection with a dev machine or an emulator.

Comment by actionfromafar 14 hours ago

Normal people can't. I'd bet more people run jailbroken than bothering with developer-mode sideload.

Comment by stevefan1999 15 hours ago

You technically can sideload. For 7 days or on TestFlight

Comment by fsflover 13 hours ago

This is not a practical way for installing apps though.

Comment by hparadiz 16 hours ago

The crypographic flow that allows payments to work is straight up pub/priv key encryption with one time use tokens. It's not something you can hack. As soon you see the token it's already been used and thrown away. So whatever nonsense about decompiling literally doesn't matter.

Comment by jfyi 15 hours ago

So your professional opinion is that the attack surface of mobile banking apps is limited to tokenized payments? Honestly, I'd be appalled if tokens were routed through my banking app. There is no reason the local client needs that data.

Comment by hparadiz 15 hours ago

My professional opinion is that APKs can be de-compiled regardless and that has nothing to do with tokenized payments themselves which are like you said handled through server-server communications at the payment processor level. Your phone simply sends a one time use token to authorize the transaction.

Comment by jfyi 15 hours ago

You were the one that brought up payments though. Nobody else specified. They just said it could be hacked, which you seem to agree with.

Comment by hparadiz 14 hours ago

I don't agree that your example makes sense. Don't feel like writing a wall of text. Zero justification for a locked down system.

Comment by jfyi 14 hours ago

What exactly was my example? You agreed with me already. Kind of odd to flip around now.

> which are like you said handled

Also, I corrected your misstatement about payments. They have absolutely nothing to do with decomp, and certainly can't be used to dismiss the entire attack surface of a mobile banking app. Your example is complete nonsense.

You are really digging a hole here.

Comment by pixard 15 hours ago

He said his app is a one time payment. Presumably there isn’t a backend and he relies on App Store purchases. I know, it’s shocking an app could just be an actual application rather than a web view.

Comment by skinfaxi 15 hours ago

You can patch out the payment checks if you can decompile it

Comment by hparadiz 15 hours ago

The payment doesn't happen on the device. It happens at the VISA/Mastercard/AMEX level. So "the app" should be doing the validation upstream on the server side and simply reporting yes/no to the app. If you hack the yes/no okay but most payments are for physical things IRL so the payment gateway that is not on your phone is gonna be like ??? - in other words it's on the app not to trust a raw true/false signal and instead rely on server side checks. This is all irrelevant. I make regular massive purchases on my linux box where I can read the memory. It doesn't change anything.

Comment by skinfaxi 12 hours ago

Ah I see you are focusing on apps that have some web component that would enable ongoing authorization. I was thinking about apps that offer a trial but you can upgrade with an in-app purchase and there is no ongoing service component.

Comment by drdexebtjl 13 hours ago

The fact that app piracy is more prevalent on Android has nothing to do with technical differences between iOS and Android side loading, and everything to do with the markets in which iPhones and Android phones are popular.

Comment by curt15 12 hours ago

Do you target macos or windows, which have always given users full control of software management?

Comment by inigyou 17 hours ago

It's a regulated market economy. Someone has to actually make the product. They can't force someone to make a product.

There's MNT in the EU.

Comment by mosura 16 hours ago

Do what the Chinese did and fork Android.

The EU has enough tech talent to do it, but the political and managerial class lack both the strategic ability or the willingness to adequately reward the effort it would take, almost certainly preferring to, again, outsource the concern, and then be shocked Pikachu later.

Anyone doubting this should see how BMW think about their in car software. And that is for a supposedly premium product.

Comment by inigyou 16 hours ago

There's GrapheneOS. It's Canadian, not European. I'm not sure where LineageOS is from.

BMW isn't the EU government. Like I said, someone has to actually do it. BMW Actually Did It in a really user hostile way, and that's the best we have. Why is nobody Actually Doing It but good? Or why aren't we buying MNT products?

Comment by mosura 16 hours ago

BMW behaviour is perfectly representative of the EU mentality.

As is your comment. It is basically “someone else should do this properly and I will take the benefits” but not actually willing to put up the hard bit themselves.

Comment by inigyou 16 hours ago

I'm talking about the government of the EU. You seem to be talking about all the countries and the people in the countries.

Comment by mosura 16 hours ago

You need to parse the word mentality in context.

The root problem here is the EU is culturally broken, and until some grand disaster will simply decline ever further with everyone involved wondering why no one else is doing anything about it.

Comment by inigyou 15 hours ago

Why don't we export some better culture to Europe then? That would be a good place and now would be a good time for Americans to flee to.

Comment by filoleg 7 hours ago

> Why don't we export some better culture to Europe then?

Because there is way more impact potential of doing so from within the US than from Europe.

Also, because moving to another country with the primary intent to "export culture" is not something (I suspect) most people are interested in (I know I am not). Overall, it feels like a weird proposal. And I expect most of the residents of those countries to treat you with both suspicion and bewilderment, if you told them that this was your reason for moving to their country (and rightfully so, in my opinion).

Comment by throw-the-towel 15 hours ago

  Take up the White Man's burden— 
      Send forth the best ye breed— 
  Go bind your sons to exile
      To serve your captives' need;
  To wait in heavy harness
      On fluttered folk and wild—
  Your new-caught sullen peoples,
      Half devil and half child.
</sarcasm>

Comment by mosura 15 hours ago

You couldn’t epitomize the problem more if you tried.

Comment by ptero 16 hours ago

If the govvies (any govvies; there is nothing specific to EU here) drive that process of forking a large, powerful, universally used system you will end up with more surveillance, not less.

Because kids, because pornography, because terrorism, whatever. This is too powerful an option for control freaks to resist.

Comment by mosura 15 hours ago

And this is why everyone gives up on doing anything while standing around complaining that no one does the right thing.

What is so pernicious about the EU approach is the enthusiasm and efficiency with which it stops anyone from doing anything, while simultaneously attempting to regulate what everyone else in the world can do. If they put even a small part of that energy into encouraging the right thing to happen they would be in such a better place it is insane.

Comment by inigyou 15 hours ago

Not really. They weren't saying if it existed in the EU it'd have to surveil. They were saying if the EU government created it it'd have to surveil.

Comment by mosura 15 hours ago

Honestly your reading comprehension is not good today.

They said if the government “drive the process of forking” which could mean encourage a group of academics to do it, or a commercial consortium. It does not mean the EU government take on the task themselves. *

It is self evident from actual EU behaviour that any mobile os that gets to users will be legally required to be a surveillance disaster area, regardless of origin, and the only people that have prevented this already are evil US corporations.

* edit to add, the EU did encourage many technical efforts vital to the mobile phone industry at different times with a mix of funding, political support etc. The Arm people would tell you AMBA (a standard relating to SoC component integration) wouldn’t exist without this, and yet no one would classify this as “a creation of the EU” but very much enabled by them. For whatever reason since about 2005 their strategic ability in this area has not merely disappeared but become actively wrong.

Comment by inigyou 13 hours ago

If the EU government told a group of academics "hey, go make a phone" it wouldn't have mass surveillance. If it insisted on being closely involved in the process, then it would.

Comment by mosura 10 hours ago

Do you think you would be allowed to sell such a phone to normal people in any serious quantity? (I know HN people get delusional about using laptops as mobile phones, but here is a hint: you wouldn’t. You would be hauled up for enabling distribution of CSAM etc until you stopped).

Look at how they treat Graphene, and that is an afternarket mod niche.

Comment by inigyou 8 hours ago

Yes, I do think you'd be allowed to sell a phone to normal people in serious quantity. The kerfuffle with Graphene was about whether or not they specifically targeted organised criminals, Anom-style. No charges were made - some idiot politician just assumed Graphene==Encrochat and made a public statement based on that.

Comment by inigyou 15 hours ago

I'm not 100% sure about surveillance but you will definitely end up with the most milquetoast risk-averse bland corporate system ever, complete with 6 months of paperwork and KYC to get a certificate to sign any executable with your real name, so it will be allowed to run.

Comment by p0w3n3d 17 hours ago

They can make the product according to rules that are imposed on them. One rule: allow privacy. Unless the privacy is not in the field of interest of both the producer and the EU

Comment by inigyou 17 hours ago

Yes, you could make the product. But you're not. And neither is anyone else. And there's nothing the EU government can directly do about that.

Comment by vovavili 17 hours ago

Then why are you not making it?

Comment by cmeacham98 17 hours ago

While the EU and its member countries can't (or at least morally shouldn't) force people to make the product, if it was a priority they could incentivise it with funding, tax breaks, etc.

Comment by inigyou 17 hours ago

NLnet funds a lot of things, few of which get very popular. It keeps a lot of FOSS gears turning but it's not making the next iPhone.

Comment by drdexebtjl 15 hours ago

They can’t force someone to make a product, but they can force someone to choose between making a product or exiting the EU market.

In practice they’re the same thing.

Comment by toymin 17 hours ago

They could give more funding to SailfishOS, for example

Comment by inigyou 17 hours ago

Sailfish would have to ask for it. Possibly via NLnet. Have they?

And they need a plan to spend it.

Comment by yorwba 17 hours ago

There is no shortage of general-purpose computing hardware in the EU. If you need some general-purpose compute to make a car, an oven, or a phone, you can get it. That consumers mostly buy special-purpose devices that don't always allow them to make full use of the possibilities of the hardware is hardly a sovereignity challenge.

Comment by zb3 15 hours ago

Show me where I can get a general-purpose computing hardware with 8GB+ of RAM that fits in my pocket and has a touchscreen.

Comment by yorwba 14 hours ago

Fairphone? https://www.fairphone.com/the-fairphone-gen-6#f_slide_1

But also, I doubt any polity would have its sovereignty undermined if their general-purpose computing hardware doesn't fit into their pockets.

Comment by rerdavies 15 hours ago

My recently-purchased Google Pixel 10 Pro has an unlockable bootloader. (Although it may be locked if you buy it through a provider).

And, for a nominal one-time payment, you can register as a developer, and compile, install and run absolutely anything you want on a non-rooted Android phone with a locked bootloader (within the constraints of the security system, which is, of course, A Good Thing).

Comment by officeplant 11 hours ago

You mean like the dozens of micro laptops/emulator handhelds from china that can all run linux or hobbyist custom roms?

Gonna have to post the storage dimensions of your preferred pockets.

Comment by RobotToaster 15 hours ago

and a 5g radiotelephony MODEM.

Comment by vlyan 16 hours ago

why do you still believe that EU is a benevolent entity?

Comment by petra 16 hours ago

I'm sure Europe currently uses the surveillance capabilities of those systems to prevent bad shit from happening.

So maybe they prefer another solution to the sovereignty issue.

Comment by duxup 4 hours ago

There’s lots of cynical takes to answer that, but I honestly think that often regulators and people writing / pushing laws just don’t know any better….

Comment by 17 hours ago

Comment by okanat 15 hours ago

There is actually a law being made called Digital Fairness Act at the moment. However the working group hasn't finalized it yet.

Note that there are competing political groups and MEPs in the EU from far right neo-fascists, to corporate lobbyist right-wingers, to Greens and even digital privacy maximalist Pirates.

Lobbyist right-wingers are now the biggest group and they pass laws like Chat Control because it gives the impression that they do something and it makes corporations money. EU has been founded as a maximally neo-liberal union. The broad human rights are remnants of the Soviet scare and world-war trauma.

Comment by fsflover 13 hours ago

Because the Free Software Foundation Europe (https://fsfe.org) that fights for this has a too low support of people. Please support them if you care about it.

Comment by legastenigga 15 hours ago

[dead]

Comment by pitchlatte 17 hours ago

yeah but processors phone home anyway at a level beneath the OS and there’s no european chip development worth mentioning. so i’m not sure real sovereignty is ever going to be possible. crazy considering ASML being in europe.

Comment by fsflover 12 hours ago

> processors phone home anyway at a level beneath the OS

Links?

Comment by handedness 8 hours ago

My guess is he's talking about the management engine.

Which, if one's comfortable with the HAP bit flip as a solution to that problem, then one should arguably also be comfortable with bit flips controlling baseband radios which still haven't been demonstrated to transmit when disabled.

Comment by polotics 11 hours ago

I can only assume the parent poster is referring to the so-called baseband, that is running on the modem processor and indeed is underneath all other OS. To know exactly what each baseband does or doesn't do, just ask people who will tell you!

Comment by Cider9986 17 hours ago

GrapheneOS has minimal, private [1] system apps so you don't have to debloat anything yourself. Manual debloating is not a good solution at the user level.

Some system apps are being overhauled, so that's something to look forward to. Gallery will be [2] based on ReFra [3].

[1] Except phone and messaging but that's the cell network.

GrapheneOS recommends Signal/Molly or SimpleX instead.

[2] https://nitter.net/GrapheneOS/status/2083724696722301266#m

[3] https://github.com/IacobIonut01/ReFra

Comment by Elfener 17 hours ago

GrapheneOS or other custom ROMs don't solve the actual problem that you can't just buy a smartphone and install any operating system like you can with an actual computer, despite technically being one.

Also, GrapheneOS supports device attestation (the non-google kind at least), which is still ridiculous as such systems have no benefit to people, only to technofeudalist corporations.

Comment by teravor 2 hours ago

    > GrapheneOS supports device attestation (the non-google kind at least)
they have an app that does GOS to GOS attestation.

they also run a remote attestation proxy to a google attestation intermediary (doesn't really accomplish anything).

they unfortunately don't provide you with the option to disable the Android APIs that can be used to get a unique hardware identifier from your device (cryptographic identity burned into the silicon) with some extra steps. APIs such as remote attestation and DRM handshake initiation.

Comment by gruez 16 hours ago

>which is still ridiculous as such systems have no benefit to people, only to technofeudalist corporations.

GrapheneOS literally has an app that uses attestation and isn't for "technofeudalist corporations".

https://attestation.app/about

Comment by hparadiz 16 hours ago

Device attestation is how you can use private keys you don't actually have access to. It has a lot of value to literally anyone who wants to store tokens or use one time authentication codes. Linux folks need to implement the full stack and offer an open alternative to payments, secrets, and tokens. In the age of LLMs there is no excuse. It is annoying as hell that I can't buy a System76 or Framework laptop with a fingerprint sensor but a Lenovo comes with one that works on Linux perfectly.

Comment by dingaling 14 hours ago

"Device attestation is how you can use private keys you don't actually have access to."

Read that phrase back and then ask "is this the future of computing that we wanted?"

The likes of passkeys, essentially user-hostile ssh keys that live on your device but aren't accessible by you, would have been an unbelievable dystopia to us in the 90s.

"Linux folks need to implement the full stack"

Nah it's fine thanks, I'd rather opt out of corporate serfdom than compromise my principles.

Comment by hparadiz 14 hours ago

That's just your opinion. Has nothing to do with Linux. And yes I would like a device like a soldered in tpm device that can generate private keys and verify signatures signed with the public key. Your misunderstanding of the technology not withstanding it does appear to me to be quite a valuable technology since it's in basically every computer these days.

Stop speaking for Linux.

Comment by sophrosyne42 15 hours ago

Framework has a fingerprint sensor. [1]

[1] https://frame.work/products/fingerprint-reader-kit?v=FRANTD0...

Comment by jeroenhd 15 hours ago

Lots of laptop vendors do. Very few integrate fingerprint scanners into any kind of secure authentication flow, though. There are decent fingerprint drivers for various brands, but connecting fingerprints to authentication beyond basic login requires manual setup.

You don't actually need biometrics to use key material, that's what (f)TPMs are for. They're not set up to be usable out of the box in any Linux distro I've tried, though.

Comment by hparadiz 15 hours ago

It needs to come stock on every Linux laptop from now going forward period. Like you expect a screen to come with your machine. Every Mac has one now and I'm not going back to typing my password in every single time.

Comment by subscribed 15 hours ago

If this is your stance it's trivial to have your cake and eat it. You can easily build your own GrapheneOS based image, which will then be unable to use attestation (because your own keys you'll use for the secure boot won't match).

And I'm not trying to be snarky, if that's the only thing, it's solvable right now. Everything else will work.

And concerning "you can't just buy a device and install is" - android and iOS are far more secure than any desktop os, and both pixel/iPhones are far more secure than any computer (or any other phone as well (we'll get the third one next year)). GrapheneOS actually explains "whys" in their hardware support faw section.

Generally maintaining an os is a hard work, so that perhaps explains why there's not many mature offerings.

Comment by Gander5739 10 hours ago

> you can't just buy a smartphone and install any operating system like you can with an actual computer, despite technically being one.

What's stopping you from buying a phone, unlocking the bootloader, and flashing whatever ROM you want?

Comment by spogbiper 13 hours ago

> install any operating system like you can with an actual computer

This is in practice only true of IBM PC compatibles these days, you really can't install any OS on modern Macs. Maybe you can on (some?) Chomebooks?

Comment by smw 11 hours ago

You can install Linux on modern macs? That doesn't mean that driver info is available, but there's nothing stopping you from installing another os.

Comment by AlienRobot 13 hours ago

A piece of wisdom I read here is that "install any operating system like you can with a [PC]" is something that you can only do with a PC. PC's are the exception. Every other device is controlled by the manufacturer.

Comment by mrbn100ful 17 hours ago

What does GrapheneOS have to do with this?

This is very useful on OEM ROMs with a bunch of scrapware, no one expects a custom ROM to have this issue.

Comment by d3Xt3r 5 hours ago

GrapheneOS also runs only on Google Pixels, which isn't an option for people who refuse to support Google, or live in a country where Google doesn't sell Pixels.

I find it ironic that an organisation which touts "privacy" so much, asks you to financially support one of the biggest anti-privacy corporations, which is why I can't take GrapheneOS seriously.

(And yes I'm aware of the upcoming Motorola partnership, but the release has already been delayed several times. I'll believe it when it actually ships).

Comment by belowavgiq 15 hours ago

GrapheneOS has got absolutely nothing to do with any of this. LineageOS, pure AOSP, are all the same. No bloat, no locks. The way they've successfully marketed a more involved custom ROM as a special OS to tech illiterates is very funny I'll admit.

Comment by nicman23 17 hours ago

in grapheneOS you can disable or uninstall almost everything without adb anyways

Comment by nekusar 16 hours ago

And Graphene OS is also anti-user by being tremendously rude about NOT providing root and using the same tired "suck-u-rity" crap Google and Apple also use.

If you're smart enough to buy a phone that supports GrapheneOS, AND install it, yeah you should have root.

And tools like XPrivacy and plugins allow control of subsystems like GPS spoofing and lying to apps.

Comment by impure-aqua 14 hours ago

Software freedom is about freedom of choice, not philosophically mandated security holes. You are free to take the GrapheneOS code and introduce a huge vulnerability in the form of a privilege escalation path from sandboxed apps if you wish, it is open source and you can easily compile and flash your own build.

Mobile phones store incredibly intimate data and are incredibly vulnerable to seizure. It stores my message history, pictures I've taken, so many other records that together would provide an incredibly detailed view into my private life. And it is on my person at all times, even through checkpoints where I have minimal protections against search and seizure like borders! This is not a device that I want a broad surface for modification of system software on.

Comment by krackers 12 hours ago

Why is providing a mechanism to view your own data a security risk? You cannot view application data (even in a read only fashion) without root on android. Why should the app be able to read its own data, but the human not able to?

Comment by impure-aqua 5 hours ago

GrapheneOS already ships Seedvault, which extracts application data with no root at all, so what you describe is possible in at least some form, but I assume not with the ergonomics you want.

Providing a good interface for that access is a specific missing capability. But we shouldn't presuppose that the only way to supply it is a global su. The former is a bounded fix; the latter changes the isolation model of the entire system. A portal is mediated, scoped to what you asked for, and revocable. Root is none of those things.

Seedvault is itself an example. The need for backups can be met either with a narrow backup service or by handing out root and letting you do it however you like. Those two have very different security properties, and you can want the new capability without wanting a generic privilege escalation path to deliver it.

Comment by nekusar 12 hours ago

> not philosophically mandated security holes.

So you're arguing the same technofascist arguments that Apple and Google both claim. I own my phone, not technofascist sky daddy, or whatever developer also envisions that role.

My hardware. My rules. More people like you need to learn what ownership actually bloody means.

Comment by impure-aqua 6 hours ago

The source code is right here, make your hardware follow whatever rules you wish with your derivative of it: https://grapheneos.org/source

Comment by upboundspiral 11 hours ago

you have the choice to run a custom build of grapheneOS with root. If you think its valuable there probably are other people that think so too and you could coordinate and figure out your own builds / releases / QOL, etc.

The graphene team provides so much value already. I don't expect them to cater to every need 100%. They are a positive force in the ecosystem when every other Android provider is locking down their builds they still provide everything as open source with security updates as best as they can.

Comment by justonenote 16 hours ago

If you are technical and want root its very easy to patch a build of GrapheneOS to include whatever mechanism you want. You can even automate this to continue to receive updates.

I think the decision of GrapheneOS to maintain the attestation features and not providing user root is what gives it a fighting chance of being accepted as legitimate 3rd choice. See: Revolut and others adding GrapheneOS keys and trusting their attestation

Like or not, for most users, having root access is a liability, especially with more and more important things being held on phones . Someone downloading a photo editing app and then having a rootkit installed in the background that waits to empty their bank account is not a workable situation.

Comment by yjftsjthsd-h 14 hours ago

> Someone downloading a photo editing app and then having a rootkit installed in the background that waits to empty their bank account is not a workable situation.

Yes, that would be absurd. Thankfully, that isn't how root access has worked in a very very long time if ever. If photo editing app requests root access... you click deny and uninstall it.

Comment by armadyl 14 hours ago

Because so-called “trusted” apps that you do give root to have no chance of getting compromised, right?

Comment by yjftsjthsd-h 14 hours ago

Pretty low, honestly, but being careful about that is why I tend to make it ask every single time.

Comment by actionfromafar 14 hours ago

Some percentage will click Allow.

Comment by yjftsjthsd-h 14 hours ago

Yes, that's Google's excuse for banning side loading. It's a terrible reason.

Comment by spogbiper 13 hours ago

They aren't banning it. They are introducing a one time 24 hour waiting period. Not ideal, but not banning.

Comment by gruez 15 hours ago

>If you are technical and want root its very easy to patch a build of GrapheneOS to include whatever mechanism you want. You can even automate this to continue to receive updates.

You don't even need to patch it, AFAIK. You can just install magisk, which is how you're supposed to get root on LineageOS as well.

Comment by ysnp 13 hours ago

Just to note Revolut are quite famously anti-security and GrapheneOS have had to work around attempts to ban it on a few occasions. You may have meant the swiss finance app Yuh or something else.

Comment by subscribed 12 hours ago

It's pretty trivial to get your own almost-GOS with root. The official GOS release simply doesn't support it in the production images.

Why not root has been explained many times and you actually either want the official image with no root exactly because of the benefits, or you want custom image because you don't need these benefits.

For location faking Mock location works on GOS,l.

I see much bigger problem with not having a reliable backup than not having root.

Comment by Cider9986 16 hours ago

GrapheneOS's goals are privacy which must start from a secure baseline. If you want to make it less secure yourself, you can, but it's not the goal of the project.

It's not anti-user if it doesn't add the features you want that would destroy the security of the OS.

It has many features that give the user more control. Like disabling emergency alerts, protecting your data from attackers, contact and storage scopes (lying to apps for more privacy while retaining functionality), sensors permission, network permission.

Comment by K0balt 15 hours ago

Seriously question; why is the answer to this not a phone that can just run GNU/Linux? Is it just the lack of application support? I mean, you’ll have blobs, but at least at the os level you’ll have options?

Can’t you run an android sandbox in Linux?

Docker phone?

I’m sure I’m missing something here, but what?

Comment by jeroenhd 15 hours ago

Energy efficient Linux is hard. Vendors aren't doing the hard work for anything but Android. So, most hardware won't work (for more than a few hours) using normal Linux.

postmarketOS and other projects are working tirelessly at bringing Linux to phones. SailfishOS too. Plenty of Android apps even run inside these runtimes.

App compatibility relies on apps supporting (very) old Android versions, though. It's also flaky in many areas and with how few Linux phones have decent GPU support, there's also a performance challenge there.

For some apps, running on Linux doesn't work because the app developers chose to only run on Play Certified, original firmware (Play Integrity and friends). Those apps cannot be patched to work right unless they implemented their checks badly.

Comment by zb3 14 hours ago

> Vendors aren't doing the hard work for anything but Android.

Because of Google's cartel-like structure where OEMs get more profit by joining, Google shares some revenue from screwing the user.

> postmarketOS and other projects are working tirelessly at bringing Linux to phones.

postmarketOS has ZERO partnerships with any OEM, their device support is "as is" and done by volunteers, not by vendors like Qualcomm or Mediatek.

> SailfishOS

This one is interesting, but currently the "Jolla Phone" can't be bought "right now", you can order for October..

I see some hope in Murena too, they partnered with Fairphone / Gigaset, so the device support is real there, but it's still Android..

Comment by Telaneo 15 hours ago

Many of the apps that people need to have smartphone to access will not run in an Android sandbox. Banking apps are the obvious example.

Not to mention that the options outside iOS and Android are slim and for the most part bad (or atleast simply even worse than those).

Comment by drdexebtjl 15 hours ago

Is it because the sandbox is bad and does not perfectly simulate the computing environment of a real device?

Because to me it sounds like a cat and mouse game that Google and banking apps are destined to lose.

Comment by bilkow 10 hours ago

It's because of the Play Integrity API, which AFAIK runs downloaded binaries in the DroidGuard environment: https://en.wikipedia.org/wiki/Play_Integrity_API

The strongest levels require hardware key attestation (which, in my understanding, uses a certificate that's baked in secure hardware and signed by Google): - https://grapheneos.org/articles/attestation-compatibility-gu... - https://developer.android.com/privacy-and-security/security-...

Comment by lucianbr 10 hours ago

There is hardware attestation that prevents a perfect sandbox from being possible.

Unless you know how to build a sandbox that can simulate a TPM with a key inside that only Google knows. Or something like that. I'm not an expert but there's plenty of information on the internet about this. It's definitely more than "the sandbox is buggy".

Comment by zzril 14 hours ago

There is the PinePhone. It has 3GB of RAM and needs to be charged daily. It's barely enough for my use case, which is essentially "I need a browser and a shell".

Haven't tried an emulator yet. Don't think I will - they're slow enough on my laptop, and I'm not interested in spending my time on reversing anti-emulator checks all day. And I don't like being forced into having a Google account, so anything that goes beyond a calculator app won't run anyway.

Comment by zb3 15 hours ago

Because this will be less profitable. Google created a cartel-like model where if you make a device that doesn't respect user choice, you will make more money because Google will share with you, providing you obey their rules.

This model is attractive for almost everyone - Google, OEMs, operators and even governments.. the only side that loses here is.. the user.

This situation can't be solved with market forces alone, it must be solved by law.

Comment by achierius 15 hours ago

Desktop operating systems != phone operating systems. You need to have a lot of support for things like "sleep apps you're not using right now" or you'll burn through battery. Not to mention that we tend to expect a lot of functionality which only works when the OS enables it, e.g. the sort of app-to-app coordination enabled by Android's App Intents. You certainly could build something like that on top of DBus, but, well, you'd have to build it.

Comment by zekica 15 hours ago

xdg already provides "portals" and "XDG Intents" that implement most of what android does. Flatpak implements most of the sandboxing you have on android. It doesn't have feature parity but IMO it doesn't need to. CGroups and systemd-user can prevent apps from running in the background.

Comment by K0balt 15 hours ago

This seems to be a case of “I want to use services from companies that are built on business models hostile towards my sovereignty, privacy, and rights! ; I can’t believe hostilecorp wont let me work around their hostileOS?”

I mean, it really sucks that so many people have made themselves dependent on this crap, but at some point you just have to stop buying the poison or stop complaining that it makes you sick.

The poison to utility ratio has gotten so high that it’s getting increasingly attractive just to ditch the whole thing. You either have to draw the line or accept that there is no line, and that you will yield any degree of agency in exchange for convenience.

For so many people, big corporations decide what they will buy, where they will eat, who they will date, how they will interact, what they believe, where they will go, how they will get there.

Multiple choice is not choice. It is the illusion of choice in a fully packaged life.

Comment by paweladamczuk 11 hours ago

Or maybe it's a case of "I want to own the place where I live and the only way to achieve that while supporting a family is participating in the economy based o hostileOS"?

It's easy to have a principled stance when the only currency it costs you is your own convenience and standard of living. For many people, life is not as simple as that.

Comment by createful 17 hours ago

I think it might be a good idea to pause updates on our Android devices, as horrible as it is for security just to prevent this from happening. My OEM has a lot of bloat (Facebook and other junk apps you can't uninstall, useless system services, etc) that mostly do nothing except provide some functionality I don't use along with analytics every minute so they are uninstalled.

"Disabling" an app does not do that much, the OS can re enable it with an update or prevent you from disabling it.

I doubt there is true full privacy on a phone anymore with a stock ROM.

Comment by kotaKat 17 hours ago

Every single reboot on my lower end Motorola phone, they have decided it fit to re-enable com.glance.lockscreenM every single boot and on every single update.

It's horrible. I don't think I can trust them to produce a Graphene phone at all, really, despite all of everyone's assurances.

Comment by createful 16 hours ago

At least you can disable it; on some phones (especially Chinese phones) you cannot do anything to the system services, they intercept all app requests, essentially what Google did but with their system. The only recommendation I can give you is to look into Hail (device-owner app that can "freeze" apps, a "lower level" form of disabling, see https://f-droid.org/en/packages/com.aistra.hail/) which will mean even if the app gets reinstalled on system update, the device owner app will prevent it from running.

I think GrapheneOS might have issues in the future considering that Android will be getting more and more locked down. People say GrapheneOS is the better OS when it just is hardened Android; it is doomed purely because of the Android base.

Perhaps a Linux based edition of GrapheneOS would do well, even if it will not have a lot of app compatibility. There's only so much patching you have to do to Android before it just becomes more work than good.

Comment by Markoff 16 hours ago

just use Shizuku + Canta to remove it

Comment by Godsend69 16 hours ago

[dead]

Comment by createful 16 hours ago

I use Rethink DNS for this, see (https://github.com/celzero/rethink-app).

Despite it's name it can also block IPs and specific apps from connecting to specific servers. I use it to block all manufacturer and OEM related apps that I cannot uninstall through adb or disable. Very handy for blocking constant Chinese phone telemetry pings, as well as additional network level blocklists for ads (Pi-hole like), completely locally so you can trust it unlike a shady VPN.

I checked out your link; it seems to be a mailing list for a hosts file for telemetry? Why is there no option to just see the file without giving in my email? Not the most private.

Comment by Godsend69 12 hours ago

You're right, our Telemetry Blocklist is a mailing list for a hosts file. I can offer you the list directly, no email required. Just visit https://raw.githubusercontent.com/lightinthedarksolutions/te... and copy the file to your device. This will block common telemetry servers without any external dependencies.

Comment by subscribed 12 hours ago

I love rethink but stopped using it on my up-to-date GOS. It randomly stops and no app can reach the internet (or me), randomly it doesn't obey the split tunneling rules or doesn't forward the connections to the tunnel at all (thus blocking all internet if wg proxy is enabled), and couple of other things.

I'll check Rethink again because all in all it's a fantastic software, just doesn't work very stable for me.

Comment by Saris 16 hours ago

I don't this is doing a lot, it only has 18 domains listed and is missing all tracking domains from samsung, motorola, apple, android, etc..

Comment by 1970-01-01 13 hours ago

If you don't have root, you are not the device owner, you are a lessor to whatever companies and carriers are subsidizing your out of pocket costs. This includes iPhone and it's walled garden approach (delete Siri - you cannot, GBs of space is permanently wasted on most users and it still drains the battery when fully disabled). Locked, unlocked, and root are terms the general public has no clue about.

Whenever someone buys an unrootable phone, ask them if they enjoy living under HOAs. That's the same level of control they've agreed to without root. Framing it this way will neatly land your point and just maybe reset their concept of what they should have purchased.

Comment by charcircuit 9 hours ago

Do you believe the same thing about a toaster that you don't have a root account for? Do you think people didn't own things before the idea of root was created in the 1970s?

Computers don't have to follow the same design choices as were done 50 years ago.

Comment by 1970-01-01 9 hours ago

Toasters are heating elements with slots for bread. The 70s saw ten men walk on the moon and return to Earth to tell us all about it. Whatever point you were trying to make wasn't made.

Comment by charcircuit 7 hours ago

And phones run apps. Neither require root to be able to accomplish their designed purpose.

Comment by 1970-01-01 6 hours ago

And drugs are bad. Neither require root to work. Point not found.

Comment by charcircuit 5 hours ago

Exactly. Root is unrelated to the problem at hand.

Comment by zb3 9 hours ago

If the toaster acts against my interest and I can't change its behaviour then yes, absolutely.

It doesn't have to be named root, the point is that my device should act in my interest to the fullest extent permitted by the law.

But those running illegal monopolies no longer fear the user and blantantly ignore their choices (yes vs "remind me later" is a good example), if I can't enforce my choice, I don't own that.

Comment by charcircuit 7 hours ago

Android in fact has an entire Settings app allowing users to configure a lot about the device. There are a lot of choices exposed to users. Exposing this ability to the user didn't require root.

Comment by zb3 6 hours ago

The number of choices exposed to users is irrelevant, what's relevant is that choices which I'd want exposed are not exposed, and without root, there's no extension mechanism which'd let me load my code into for example the system server process.

What you also seem to be ignoring is that the fact that for example there's no simple runtime internet permission toggle is NOT an accident, this functionality is deliberately not directly exposed despite creating no "security risks" and you know it very well.

Comment by charcircuit 46 minutes ago

And if you wanted a toaster with a setting to enable which side of the bread gets cooked you may have to look for a niche product instead of using main stream toasters similar to how you may need to use a niche operating system like GrapheneOS for your special handling of internet permissions.

Even if a toaster doesn't have such a setting or an easy way to add, you still own it. When products are designed they have a specific design that they implement.

Comment by dugite-code 16 hours ago

Ok this is not as bad as I feared, disable still works and that uninstalls any updates that app has gotten.

It was always a bit surprising you could uninstall an app in a "read only" partition

Comment by charcircuit 13 hours ago

It would only uninstall it from the /data partition which would cause it to fallback to the version in the /system partition, taking you back to the version included in the last update of your phone's OS.

If an app is installed to both partitions Android uses the one with a higher version.

Comment by belowavgiq 15 hours ago

HN users are so hilariously out of touch with the Android world they are downvoting your completely correct observation.

I'd probably get more useful information reading Hindi Telegram groups without translating anything

Comment by freefaler 14 hours ago

14 years ago, Cory Doctorow warned us about that: https://www.youtube.com/watch?v=gbYXBJOFgeI

The modern societies run via those devices and the enforcement will move to the mostly free Internet that was "a long time ago, when it didn't matter as much".

Comment by jackdoe 15 hours ago

In the next decade open hardware will win, any machine that exposes itself to be programmed by its user will be infinitely better than a machine that doesn't.

From keyboards to phones to tractors.

The appstore will die, and the walled gardens will die.

Unless they use 'for the children' to make open machines illegal.

Comment by 999900000999 14 hours ago

Most people don't care. Microsoft themselves are even moving Windows towards a more closed model. Apple's in the same camp. If you don't use their official magical stores or get something that has a certificate validating who actually compiled the code, all the sudden you're using scary binaries that might do weird things to your box.

The six or seven percent of us that know how to use Linux will complain, but eventually I can even imagine bootloaders being locked down so much that you need to spend significantly more to buy a computer that actually lets you install what you want.

Comment by xg15 13 hours ago

Could someone explain this bit?

> many system apps run in the background after being uninstalled, but it's unknown whether they do when disabled.

Is this because some real system apps (as opposed to vendor bloat that just got the "system" flag through bribery) have components in the OS outside the "app" framework that genuinely can't be removed?

Comment by tstactplsignore 16 hours ago

This sucks. I use adb to uninstall all of the system apps like facebook, youtube, web browser, etc. to give myself a minimalist, distraction-free phone that still has niche apps, maps, and communication apps. Might have to look into the expensive light phones as an alternative now if this update hits my phone.

Comment by ethagnawl 15 hours ago

> I use adb to uninstall all of the system apps like facebook

I've only ever used Cyanogen/Lineage or Graphene, so I had no idea this was a thing. I'm not surprised but ... WOOF.

Comment by pid0x17 16 hours ago

I had the exact same problem because I had a strong addiction to smartphone apps.

I looked into the Light Phone and The Mudita Kompakt, but I ended up buying a refurbished Pixel 8 and putting Graphene OS on it, then I installed only essential apps I need. I keep my old iPhone 12 in a drawer at home and use it for anytime I Need any apps that don't work on a custom ROM, which includes my bank app (plus, imo, it's safer not carry around a phone that has my baking data on it in case it gets lost or stolen).

The light phones are a really cool concept but the Light Phone 3 is quite expensive (more expensive than a new Pixel 10) and the Mudita Kompakt seems to have a huge amount of grievances from users on their forum, so that put me off.

Comment by ChocolateGod 13 hours ago

They can still be disabled.

Comment by charcircuit 13 hours ago

You have never been able to uninstall apps from the /system partition with adb (without root). You have only been able to disable them to stop them from showing up.

Comment by ck2 15 hours ago

Comment by throw-the-towel 14 hours ago

Aren't they going to break that too? https://news.ycombinator.com/item?id=49045159

Comment by solnyshok 13 hours ago

I think shizuku has same privileges as adb. if adb debloating stops working, shizuku will stop too.

Comment by Markoff 16 hours ago

Why would you uninstall them over disabling them? They make good point uninstalling is pointless, disabling achieves same purpose and it is safer. You can't use that system space anyway.

if you don't want some system app running just "uninstall" (disable) it with Shizuku + Canta on any non-rooted Android, my current phone is the first one in 15 years with Android which I didn't root since unlocking bootloader on XIaomi is pretty much impossible, but anyway I can achieve pretty much same results with Shizuku and additional apps like Canta, Hail, Shizuwall, etc.

Potential benefits:

as mentioned, Android 17 prohibits uninstalling system apps, but allows disabling disabling apps is usually safer, and they could be re-enabled from Settings in some cases many system apps run in the background after being uninstalled, but it's unknown whether they do when disabled. Neutral:

some apps might get re-enabled unless they're uninstalled (or the opposite). Potential harm:

that would make it more risky for those who prefer to uninstall instead to save storage most of the already listed apps are primarily tested for uninstalling rather than disabling disabling instead, decreases privacy by not hiding apps, keeping the device unique.

Comment by jauntywundrkind 22 hours ago

Noose keeps tightening, the war on General Purpose Computing, the war against users owning devices intensifies. How utterly fallen.

We'll see what happens with the proposed ADB changes. Lots of no one asking for this, lots of people describing how badly their phone use will be greviously impacted, and seemingly very little discussion/engagement/justification. Maybe they'll fire the bullet anyways. https://issuetracker.google.com/issues/526109803

Comment by mayama 17 hours ago

I said the same thing about waiting for 24hrs before being able to use adb to install apps. About 24hrs being not a big blocker and that it was good for security. It's all about boiling the frog slowly, 24hrs is the start and then they'll add more restrictions once users accept that. Ultimately goog would like to have the system as much locked down as apple or even more.

Comment by gruez 15 hours ago

>I said the same thing about waiting for 24hrs before being able to use adb to install apps.

I thought it was 24 hours OR use adb?

Comment by felooboolooomba 18 hours ago

You will own nothing and you'll be happy.

Comment by II2II 16 hours ago

Maybe they're right, albeit for all the wrong reasons.

Perhaps the problem is our desire to have everything, no matter what the compromises are. Perhaps the problem is our inability to say, I'm going to go with product X even though it lacks Y because we actually own X. There is virtually no incentive for competition to pop up in such an environment since established companies have a lead of years, decades if you consider the size of the established companies, so consumers will follow their lead.

I don't mean to suggest that buying alternatives is a solution to the problem as a whole, but doing so may allow enough niche products to survive to give those of us who are interested in alternatives and alternative to choose from.

Comment by type0 17 hours ago

You, too, will love Big Brother

Comment by metalman 13 hours ago

ouch,damn it's hot!, anyone else noticing the cooked amphibious odor , and hark there is a riseing chorus of croaking and peeping

Comment by spwa4 17 hours ago

Extremely "Googly" responses there. Not a single mention of the strategy of Google to include, oh, payment, social gaming, ads ... effectively building it into the system and totally disregarding the reasoning that people might want to remove or replace Google Play Services for those reasons. Just act like all that doesn't exist.

Comment by eth0up 13 hours ago

I have a Moto, possibly my 10th.

With each new phone, the first thing I do is initiate an ADB session to begin (a futile attempt at) removing all unnecessary bloat. If I thought it wouldn't be flagged, I'd print a list of the unbelievably superfluous slop on a stock Moto (or any Android), and Moto is better than average -- but my comments have been getting flagged a lot lately and it's not worth the work.

Each year, the process becomes more and more restrictive, and what was nuke-able last year, is immutable the following. Because it's much easier and not much less relevant, I will print a list just of the Play Services festering in the background, viewable through 'developer options'. See:

    CrisisAlertsPersistentServices; LifeCycleService; SndDetectionService; GmcService; OfflineBeaconService_Persistent; ContextManagerService; PersonalSafetyService; AuthenticatorService; SuggestionsProvider; ReceiveSurfaceService; SendSurfaceSrvice; IntegrityApiPersistentService; GmsCoreStatsService; LifeCycleService; EmergencyPersistentService; SemanticLocation-Service; LockScreenService; SchedulerService; GoogleLocation-Service; GoogleLocationManagerService; LocationsPersistentService; DiscoveryService; Google Play Services
And that is after ADB removals, and after disabling as many of the related "services" listed above as I can. There are many other "services", eg all the Moto crap, Wireless Emergency Alerts (which is 'disabled' but runs anyway), along with the cached services.

Disabling as many of those as I can, the phone runs fine, with the obvious exceptions, such as google disabling certain apps that depend on the background festival.

The last I commented on this, I was attacked for being anti-Google, or something. But when I acquired this phone, if I remember correctly, I bought it, not leased it. My first smartphone was from 2017, and was a Pixel. I was never satisfied with the liberties it offered, but compared to each proceeding year, it could reasonably be considered utopic. With covid, contact-tracing, or the components thereof, were hard baked into the services suite. And then everything in general just got a lot worse.

My point here is not to rant, even if I am a bit. It's more so me sitting here in a mixture of awe, and cynical awareness, beholding how obtrusive, anti-user, brazen, opportunistic, self-serving, and ridiculous Android has become, and how little can be done about it, and how over time, the user's ability to do something about it, has been progressively chipped away, and is now essentially nothing, and this is all, by general consensus, just fine.

And we keeping getting stronger and faster phones. Imagine how strong and fast these phones would be without the festering festival in the background. And maybe, think of the landfills, and lithium mines. Or, just freedom and dignity, an endangered duo near extinction.

Comment by kotaKat 15 hours ago

Looking at the comment in the actual code change:

"If we are being asked to delete a system app for just one user set flag so it disables rather than reverting to system version of the app."

... Joy. This makes the 'nondisable' list an even more unhinged malware delivery mechanism for operators, because you won't be able to disable the carrier shitware app and it gets updates!

It's time to start cracking down on malware preloads on phones and the over-subsidization of consumer products. We need to stop accepting $50 smartphones and $100 smart TVs that are crammed with a few hundred dollars of profit for the manufacturer to shove ads and malware at you nonstop out of the box.

Comment by iluvcommunism 16 hours ago

[dead]

Comment by 927373912092 15 hours ago

[flagged]

Comment by 927373912092 15 hours ago

[flagged]