Simple steps to take before hitting the streets

  • Pantherina@feddit.de
    link
    fedilink
    arrow-up
    6
    ·
    edit-2
    7 months ago

    All Android phones have Google malware installed by default, as system apps, which means those apps can do whatever they want.

    So every piece of data you put on there is possibly tracked and collected.

    Then there are 2 more problems

    • the software is proprietary and cannot be externally wiped clean
    • the software is outdated

    This makes it vulnerable to Pegasus attacks and others. There are tons of secure practices to avoid getting it, like LTE-only, HTTPS only, encrypted and trustworthy DNS, sandboxed processes, blocked javascript execution from unknown websites…

    But still if the phone is outdated there are unpatched and publicly known security issues. Just spamming them at all phones is likely to succeed as so many people run vulnerable versions, as vendors suck.

    Then if you have pegasus, the only way for security is to reflash the A/B partitions, both. Factory reset is not secure as it will keep what is already in the system partitions.

    The firmware is protected and signed by the vendors, so it is likely clean.

    But Pegasus installs itself to the phone storage.

    If you A cant obtain factory images or B cant flash the phone at all, you cannot wipe it clean.

    So a good activism phone needs

    • trustworthy and minimal system apps / stock software
    • modern software updates
    • possible to reflash whole device externally
    • nice to have: ability to verify checksum of system partition, like GrapheneOS Attestation

    This makes them poorly pretty expensive. I think a slightly outdated GrapheneOS phone is okay though.

      • Pantherina@feddit.de
        link
        fedilink
        arrow-up
        4
        ·
        7 months ago

        I think 3a is already too old. I think 4a is a better minimum, but this is still insecure of course.

          • Pantherina@feddit.de
            link
            fedilink
            arrow-up
            2
            ·
            7 months ago

            Yes I know, and I want to try DivestOS one time. But they do incomplete patches.

            They cannot update the kernel themselves or even worse the firmware. The kernel needs to be built and patched for the specific hardware, GrapheneOS relies completely on Google here. And the firmware needs to be signed by the vendors, so no chance either.

            And especially baseband, cellular stuff has extremely many vulnerabilities in the code.

    • ReversalHatchery@beehaw.org
      link
      fedilink
      English
      arrow-up
      2
      ·
      7 months ago

      Most of that is solved by installing a ROM that’s not user hostile, keeping it updated of course, and using the phone strictly as a purpose specific device.

      That means you run a trusted VPN on it so HTTP/S and DNS concerns go out the window.
      Sandboxed processes, blocked JS? Fine if you only install what’s necessary and don’t use the web browser. JS blocking is not a huge hurdle though, ublock does it with just 2 clicks.

      Then if you have pegasus, the only way for security is to reflash the A/B partitions, both. Factory reset is not secure as it will keep what is already in the system partitions.

      That’s right but I don’t think that this is enough. If the Pegasus malware (package) really is able to do that many things, it’s a walk in the park for it to modify any of the partitions, including that which contains the modem, or just data like the modem’s IMEI and MAC addresses.
      In the cause I would either restore a backup of all partitions, or throw the phone away (not literally).

      The firmware is protected and signed by the vendors, so it is likely clean.

      Except if they patched the verification mechanisms of the OS.
      Also, the firmware may be protected, but what about data partitions which are read by vulnerable software.

      This makes them poorly pretty expensive. I think a slightly outdated GrapheneOS phone is okay though.

      Are you sure? My 6 years old phone still receives LOS updates

      • Pantherina@feddit.de
        link
        fedilink
        arrow-up
        1
        ·
        7 months ago

        Not sure if VPN eliminates all risks with 2G and 3G, maybe it does.

        Sandboxing, javascript

        Vanadium has sandboxing but its javascript blocking is useless (no granular control)

        Mull has no process isolation at all, but support for UBO and Noscript. Bad situation

        it’s a walk in the park for it to modify any of the partitions

        These cannot be written without TPM verification or stuff, ask GrapheneOS devs about that, I dont know. The firmware signing is required, the verification will not be done inside the OS, that would be totally flawed.

        If they have the firmware signing keys, they can fuck you. If they dont, they can only write to the system partition, and Attestation can see that.

        Reading data has nothing to do with that. They likely can, but that doesnt matter.

        My 6 years old phone still receives LOS updates

        This will not include firmware and likely even the kernel.

        • ReversalHatchery@beehaw.org
          link
          fedilink
          English
          arrow-up
          1
          ·
          6 months ago

          Not sure if VPN eliminates all risks with 2G and 3G, maybe it does.

          It doesn’t, but probably even on modern phones it only does if you explicitly set it to only use 4G but nothing below that.

          Mull has no process isolation at all, but support for UBO and Noscript. Bad situation

          If you only visit known reputable websites it’s probably not really a problem, but also, I think there are chromium browsers that have addons. Not sure though if there’s one that besides that also has the security patches.

          These cannot be written without TPM verification or stuff

          I doubt that it couldn’t be written, I believe TPM can only verify its contents and make the phone refuse to boot if it doesn’t agree on the authenticity of the partition contents.
          However it’s also a question which partitions are checked that way: only the system partition? Or more? Probably not all, because they can’t verify e.g. the main user data partition, because it’s ever changing contents were never signed by the manufacturer. There’s a few dozens of partitions usually so this is not trivial to answer.

          the verification will not be done inside the OS, that would be totally flawed.

          Yes, verification is done by one of the bootloaders. At least partly, the OS and maybe other layers must be doing it too, just remember why Magisk had a feature to hide it’s processes and the controlling app itself from select system services and other apps.

          Reading data has nothing to do with that. They likely can, but that doesnt matter.

          Didn’t mean that. I meant writing data that is later being read by other important system software that is vulnerable to specially crafted quirks in that data.

          • Pantherina@feddit.de
            link
            fedilink
            arrow-up
            1
            ·
            6 months ago

            Not sure but GrapheneOS has an “LTE only” mode, stock Android only has preferred Network afaik.

            visiting only known websites is not a scaleable option, a browser needs to be secure. Kiwix is the browser that basically runs desktop Chromium on Android, so it has Addon support. But that is also soon manifest v3 restricted, and likely pretty insecure.

            of course the user data partition is not checked, but every other important one. I have not tested what would happen when it is modified though.

            I dont know what magisk did, but I think that is only about Google Play adding their “safety” scanning to the OS. Nothing regarding boot. But yes, likely there could, can or should be OS components scanning things too.

            Googles stuff is pretty insecure, for example the latest SafetyNetFix simply disabled hardware cryptography, as they still support insecure phones.

            For sure this is very complex and there are always vulnerabilities found in Android and GrapheneOS.