‹ BackHN Continuity

Thread

GrapheneOS – When an app is slow

86 points · 65 comments · speckx

  1. negative_zero · · focus · HN ↗
    Odd. Google Pixel 7 with GrapheneOS here. OsmAnd works perfectly fine for me without disabling any exploit protection options.
    1. Self-Perfection · · focus · HN ↗
      And yet problems exist. Live Updates are not rendered if both OsmAnd V2 rendering and hardened memory allocator are enabled: <a href="https:&#x2F;&#x2F;github.com&#x2F;osmandapp&#x2F;OsmAnd&#x2F;issues&#x2F;20190" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;osmandapp&#x2F;OsmAnd&#x2F;issues&#x2F;20190
      1. grapheneos · · focus · HN ↗
        Those are memory corruption bugs which are potentially exploitable vulnerabilities. There are no false positives for the security protections in hardened_malloc including the hardware memory tagging (MTE) integration. It only detects invalid memory corruptions via use-after-free or out-of-bounds accesses. Due to a relatively high number of apps having invalid memory accesses during regular use, we don&#x27;t enable MTE for all user installed apps yet. We always use MTE for the kernel and userspace code in the base OS but it&#x27;s opt-in for most user installed apps via a global toggle to enable it by default and a per-app toggle mainly intended for opting out for incompatible apps.

        OsmAnd has a massive amount of legacy C++ code which hasn&#x27;t been heavily tested with HWASan and MTE. It has a history of having many memory corruption bugs discovered and reported by GrapheneOS users. That&#x27;s the exploit protections in GrapheneOS working as intended and it&#x27;s why there are per-app compatibility toggles to work around apps which can&#x27;t be used due to memory corruption during regular use. It would be better if apps had higher quality native code and didn&#x27;t need us to provide compatibility toggles but that&#x27;s the way things are. It&#x27;s much worse on desktop operating systems.

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.