Comment by 1vuio0pswjnm7

9 months ago

"Great to have Google kicked off the phone"

Except the default browser is Chromium with some changes

This reminds me of a recent HN comment I saw that suggested using Firefox was "kicking Google where it hurts" or something like that

Like Firefox, this project depends on Google. For the hardware, the web browser and who knows what else

It even offers a sandboxed Google Play Store

It tries to copy Google paternalism

It swaps a Google mothership for a Graphene mothership

What if the computer owner does not want a mothership

Can connections to Graphene servers be blocked, i.e., are these connections optional or mandatory

Even Netguard which works on any hardware and does not require root makes unnecessary connections to ipinfo.io servers effectively giving them a list of almost every domain the user's phone trying to access

If the concern is apps that only require internet connection for ads, Netguard solves that problem without root

Most apps but not all will try to connect to the internet at some point, even if you never use them

The user-hostile design of Android is that apps keep running in the background after they are "closed"

(There are crude apps one can use to automate manually killing each process with "Force stop" but no one uses them. This doesn't prevent apps from trying to access the internet on some preset schedule)

Netguard will show when apps try to connect and block the connections. It provides DNS logs and PCAPs.

One does not even need Netguard to see this subversive activity

Try this at home

Enable IP forwarding on a computer you can control, i.e., one that is running an OS you can compile yourself such as Linux or BSD

Put the phone on the same network as this computer

Set the phone's gateway address to the address of the computer

Run tcpdump on the computer and filter for the phone's IP address

I work for IPinfo. What is the context mentioning us here? I'm unsure if graphene uses our data. We process trillions of requests at the moment. I have no clue which services or software even use our data, let alone identifying individual IP addresses.

Is making a connection to our API a cause for concern? If that is the case, we welcome OSS projects to user our local IP databases, which includes our free IPinfo Lite database that we primarily designed for firewall and privacy applications.

GrapheneOS may give a computer user all the control they want from Android

However it does not remove Google's control, e.g., ability to pull the plug

Google controls the hardware and the source code for the default browser

Some users might want more control, less dependence on Google

"Paternalism" is a belief by developers that they "know better" than the computer owner what choices should be made for someone else's computer

For example, pre-installing software, or connections to remote servers, and enabling these choices by default

Paternalism dismisses any idea of personal autonomy

Providing a computer user with choices rather than "defaults" could mean loss of control by the developer and any associated revenue

When viewing the "Show log" screen in Netguard, under the top right, three dot menu there are checkbox options for "Show names" and "Show organization". Netguard sends requests to ipinfo.io to get information about IP addresses. These requests to ipinfo.io do not show up in the Netguard log.

There is no cause for concern necessarily. These are design choices, nothing more.

Users have no idea what happens to the data that leaves their computers. To quote from another story currently on the HN front page: "It's incredibly easy to give information away. But once that data is out there, it's nearly impossible to take back." https://news.ycombinator.com/item?id=44689059

Promises made by developers are reassuring to some, but rarely if ever legally enforceable in the event something goes wrong, and the harm already caused may be beyond redress. As a proactive measure users can, among other things, seek to minimise the amount of data they send. For example, some users might want the _option_ to stop their phones from constantly trying to ping or connect to remote servers _without any explicit user intent to do so_. Maybe they do not want their phone to act like a beacon to someone else's remote server.

The point of the comment is that sometimes there are remote connections being made to servers chosen by developers that are assumed to be OK with all users, e.g., connections to Graphene servers, IPinfo servers, or myriad other examples. Meanwhile there is no option for the user to disable this behaviour. There may be some users who prefer _zero_ remote connections except the ones they themselves choose to initiate or enable. The possibility of such users often seems to be overlooked or deliberately ignored.

Like Firefox constantly sending HTTP requests to remote servers to check for "connectivity". Even when the user is not trying to connect to any server. The requests are sent in the clear. This is not optional behaviour.

  • Traditionally Windows allowed applications to be either minimized or closed. (AFAIK it still does.) These options might be displayed as buttons in the upper right corner of the window in which the application is running, for example, [-] and [x], respectively. When an application is minimized, it may continue to run in the background. When an application is closed, it does not run in the background.

    https://www.zdnet.com/article/3-ways-to-stop-android-apps-ru...

    https://www.androidpolice.com/how-to-close-android-apps/

    https://www.androidauthority.com/how-to-close-apps-on-androi...

    An exception would be Windows applications that can be "run as a service". This is generally not default behaviour for user-installed Windows applications. It generally requires administrative privileges and manual configuration for each application

    https://en.wikipedia.org/wiki/Windows_service

    https://stackoverflow.com/questions/3582108/create-windows-s...

    https://www.windowscentral.com/how-start-and-stop-services-w...

    Unlike Windows, Android does not present an option to close an application while the application is in view. Android applications can be "swiped off" the screen, but they are not closed. By default, _all_ Android applications continue to run in the background. Closing an application in Android requires using a separate app. For example, opening the "Settings" app, then finding the app to be closed in a list of apps, then "stopping" the app by selecting "Force stop" as describeed in the articles above. If the Android user wants to close a number of applications running in the background simultaneously, she is out of luck. They can only be closed serially, one after the other. She must find each of them via the Settings app and Force stop each one, individually. This is extremely tedious and slow and, as one would expect, results in almost all Android users allowing applications to run in the background. The tedium mandated by this design could be purely coincidental.

> Except the default browser is Chromium with some changes

Chromium has vastly superior security compared to Firefox. https://madaidans-insecurities.github.io/firefox-chromium.ht...

> It tries to copy Google paternalism > > It swaps a Google mothership for a Graphene mothership

Nonsense claims. All network connections made by the OS are well documented on the official website: https://grapheneos.org/faq#default-connections

There are only a few services GrapheneOS devices connect to:

- a time server (securely, over HTTPS, not insecure NTP)

- the OS update server (obvious; it's just plain HTTP requests, no user identifiers other than the IP address, which can easily be masked by using Tor or a VPN)

- the GrapheneOS App repository, which provides updates for preinstalled apps like Auditor, as well as the Vanadium browser and WebView (it's critical to get security patches for your browser in a timely manner)

- network connectivity checks (required to sign in to public wifis that use captive portals; can be entirely disabled in the settings)

- SUPL and PSDS through GrapheneOS proxies for A-GNSS because there is no network location service enabled by default

> Can connections to Graphene servers be blocked, i.e., are these connections optional or mandatory

You can block all the connections. You don't even need to, since they can all be disabled in the settings. If you disable the System Updater app, you're gonna have to adb sideload your system updates https://grapheneos.org/usage#updates-sideloading.

> If the concern is apps that only require internet connection for ads, Netguard solves that problem without root

You don't need Netguard, GrapheneOS has a built in network permission toggle, which offers even better protection than a firewall, since it completely blocks access to the underlying network socket (https://grapheneos.org/features#network-permission-toggle)

> The user-hostile design of Android is that apps keep running in the background after they are "closed"

You can deny apps running in the background, even on stock Android. This isn't unique to Android btw, I'm sure you've come across the system tray in Windows before. Those are all apps running in the background. Android basically has the same thing, it's in the notification center, and you can also stop background apps from there.