Earlier quoted context omitted.
To expand a bit: 16-byte chunks of memory can be associated with a four bit tag. Then you steal four unused high bits from your pointers to store a tag value. When memory has a tag, a pointer used to access it must have the matching tag in its high bits. Your malloc implementation can then assign a different tag to adjacent allocations and any overflow into an adjacent allocation will have a mismatched tag and will t…
Implementing MTE is mostly another step in Apple’s efforts towards memory safety. There are bunch of things they’ve done to try to make this work a little better, but for obvious reasons, this is never going to be turned on by default for user apps and is only enabled for specific pathways. > Because EMTE tag checking imposes a performance cost, we designed Memory Integrity Enforcement to take advantage of our secure…
GrapheneOS says Pixel 11 has MTE support after all
161–170 of 175 posts
Re: GrapheneOS says Pixel 11 has MTE support after all
#162Re: GrapheneOS says Pixel 11 has MTE support after all
#163Earlier quoted context omitted.
> It is a niche, it always was. Again, only because the platforms are locked down and there is no single standardized target for universally bootable ROMs in the way a Linux ISO can boot on any PC. Kinda sounds like you might be younger and didn't live through the 8bit micro -> PC transition. Standardization of the platform led to a cambrian explosion. https://en.wikipedia.org/wiki/Influence_of_the_IBM_PC_on_the...
> Again, only because the platforms are locked down and there is no single standardized target for universally bootable ROMs in the way a Linux ISO can boot on any PC. Couple of things here. Android was never that open to begin with. There were always (and still going) issues with the kernel sources being withheld indefinitely, AOSP side changes are almost never released at all, iirc only Google released anything. Bo…
You've restated my thesis.
> Yes, I am on the younger side
I could tell.
Re: GrapheneOS says Pixel 11 has MTE support after all
#164[flagged]
Re: GrapheneOS says Pixel 11 has MTE support after all
#165My strong instinct is that GrapheneOS's plan could be problematic: Generally, do not to invest in features that the upstream vendor isn't fully committed to. It might work today, but tomorrow or next year, etc., it might not. They might even deploy other things that are incompatible or do other things that assume the feature is disabled. In fact, plans to do those things might be the reason they disabled MTE. Also, n…
GrapheneOS is a non-profit, publicly naming the actual issues is the only thing they can do to make Google fix those issues. And it is clear that security/privacy is their first priority, not "brand image"
Good security engineering isn't sufficient: GOS could accomplish the security engineering by making an OS for themselves on a private git server and never distributing it.
But if we want to help the public with security and privacy, then the outcome depends on GOS's brand image - perception drives public adoption, who will never read long posts on arcane engineering matters. It depends on GOS's relationship with Google and its individual engineers, a relationship in which Google and the engineers hold all the cards - they could choose to cut off GOS completely tomorrow at no cost to themselves.
It's an engineer's fantasy that you can ignore those things and just do engineering; life just isn't like that. Doing that would imperil or greatly limit GOS, which hurts everyone.
Re: GrapheneOS says Pixel 11 has MTE support after all
#166Re: GrapheneOS says Pixel 11 has MTE support after all
#167For anyone else not knowing what MTE stands for: > Memory safety bugs, which are errors in handling memory in native programming languages, are common code issues. They lead to security vulnerabilities as well as stability problems. >Armv9 introduced the Arm Memory Tagging Extension (MTE), a hardware extension that allows you to catch use-after-free and buffer-overflow bugs in your native code. https://developer.andr…
MTE is essentially hardware-accelerated AddressSanitiser[1]. [1]: https://clang.llvm.org/docs/AddressSanitizer.html
It also explains that the fact ASan works well with, e.g., std::vector in C++ doesn't come for free and if you want ASan to detect bugs when your custom collections or allocators are used you have to use special ASan API to mark [in]accessible memory.
Re: GrapheneOS says Pixel 11 has MTE support after all
#168Re: GrapheneOS says Pixel 11 has MTE support after all
#169> It's possible to enable reserving the tag memory for MTE via `fastboot oem mte on`, boot a non-stock kernel ignoring arm64.nomte and use MTE. What I'd like to know is, is it not sufficient to just check the feature bits in ID_AA64PFR1_EL1? (Isn't this the first thing you'd try when trying to determine if the hardware supports some feature?) If they were making the determination solely based on the fact that `arm64.…
ID_AA64PFR1_EL1 was discussed five days ago https://discuss.grapheneos.org/d/41564-pixel-11-doesnt-meet-...
edit: Oh, I guess Linux does emulate the feature registers, doh. Since that user is booting with arm64.nomte, the kernel is changing those feature bits to zero! This probably explains the confusion here about hardware support: in Linux userspace, you still trap for system register reads, and this is just abstracted away from you...
https://github.com/torvalds/linux/blob/841e384b841a3d89c50b4...
Re: GrapheneOS says Pixel 11 has MTE support after all
#170Earlier quoted context omitted.
> Again, only because the platforms are locked down and there is no single standardized target for universally bootable ROMs in the way a Linux ISO can boot on any PC. Couple of things here. Android was never that open to begin with. There were always (and still going) issues with the kernel sources being withheld indefinitely, AOSP side changes are almost never released at all, iirc only Google released anything. Bo…
> Nobody is interested in reinstalling OS-es on their phones because the amount of effort to create an Android ISO that's as usable as what's preinstalled is truly gigantic. You've restated my thesis. > Yes, I am on the younger side I could tell.