Christian and software developer focused on application and OS security. Creator of @accrescentapp. bsky: @lberrymage.dev | fedi: @lberrymage@infosec.exchange

Joined December 2021
Today I learned that the PKCE extension for OAuth2 is officially pronounced "pixy"
1
5
96
Logan Magee retweeted
How does a complex application like Accrescent manage its API? In this blog post, we discuss some of the API challenges we encountered and our journey to create a single source of truth: accrescent.app/blog/posts/a-…
3
26
531
Nearing 100% Lighthouse coverage for the deterministic (i.e., mostly non-perf) audits feels good
1
3
125
Logan Magee retweeted
Another day, another refresh! We've restyled and unified our website so that you can find everything Accrescent all in one place with one look, blog posts and documentation included. Let us know what you think! accrescent.app/
4
4
56
1,070
Logan Magee retweeted
In anticipation of our upcoming blog posts, we've refreshed our blog! It's now simpler, smoother, smaller, and JavaScript-free. We'll be revising it gradually, so let us know what you think of the new design! Accessibility is especially important to us. blog.accrescent.app
2
2
49
718
I've really been enjoying @astrodotbuild for static site generation. No JS by default but easy to add incrementally as desired, very customizable, doesn't break as often as Hugo, components, TypeScript/HTML-based templating is so much nicer than DSLs, easy optimized images, etc.
6
257
Logan Magee retweeted
This is so strange to me. why invest in a fancy security chip (with a million dollar bounty), advanced boot loader security, forcing kernel mitigations be enabled across vendors, just to ditch MTE? Pixel used to the gold standard device for Android security..
Losing MTE is probably the biggest backwards step in security history. Exploitation is forever trivial on Android with no near term hopes of difficulty increases of significant effect.
16
43
3
647
59,939
Logan Magee retweeted
We have a partial port of GrapheneOS to the Pixel 11 series after a week of work on it. We're unable to complete the port due to lack of support for ARM hardware memory tagging in software, firmware and near certainly hardware. It appears Google cut an important security feature to save money. ARM hardware memory tagging (MTE) is used by GrapheneOS across the entire base OS including the kernel and every standard base OS process. It's only temporarily disabled for a few device-specific processes. It greatly improves protection against nearly all remote exploits and many local exploits. Pixel 8 launched with hardware MTE support in October 2023. We integrated it into our hardened_malloc project and began using it across the OS later that month. Android and the Pixel OS never started using it by default. Android Advanced Protection Mode in Android 16 enables it for a few processes. Apple's Memory Integrity Enforcement (MIE) is an always enabled feature on the iPhone 17. It's simply a high quality implementation of MTE using the latest standard extensions. It uses MTE in the most secure mode in the kernel and a large portion of userbase. They did a very good job integrating it. Apple's MIE and Android 16+ AAPM don't use MTE for user installed apps unless those explicitly opt in. GrapheneOS enables it for more apps automatically and has a toggle for users to opt-in for every user installed app. There's a per-app toggle to opt-out for incompatible apps which is uncommon. Neither iOS or Android encourage app developers to opt into MTE and other more aggressive security features used in the base OS. Apple's docs warn developers of performance and stability issues. Even Signal doesn't opt-in. Our approach enables forcing using MTE in the standard allocators regardless. Pixel 11 does have security improvements including moving to post-quantum secure verified boot (ML-DSA) and replacing Samsung Shannon IMS with AOSP IMS. Titan M3 should significantly improve protection against data extraction in Before First Unlock state. It's too bad they ruined it by cutting MTE. Pixel 11 series is a lot more expensive for an incremental improvement to the CPU, the same underpowered GPU and reduced RAM for the Pro base models. They finally caught up to the last generation of Qualcomm cellular radio. It's overpriced, the upgrades aren't impressive and losing MTE is appalling. Compared to the Pixel 11, a Snapdragon 8 Elite Gen 5 has ~40% higher single threaded CPU performance, ~80% higher multi threaded performance, over 100% higher GPU performance and a far better cellular radio. It also finally has MTE. The next gen is what will be in the first Motorola with GrapheneOS. Pixel 9a and earlier (including Nexus devices) were the Android Open Source Project reference devices. Pixel support was removed from AOSP with Android 16. It's now harder to support Pixels than many other devices and massive progress towards open source firmware and driver libraries was discarded. Compared to the stock Pixel OS, GrapheneOS ships AOSP patches months earlier and Linux kernel patches many months earlier. However, we rely on them for firmware and most driver updates. We also want to move to new kernel branches earlier. These things can be improved with our Motorola partnership. We strongly recommend against buying Pixel 11 devices. Pixel 8, 9 and 10 have much better overall security for GrapheneOS. Pixel 10 is cheaper with similar hardware and MTE. Pixel 11's Titan M3 should improve BFU security for users without a strong passphrase, but losing MTE craters AFU security. We haven't determined what to do about this situation. It may be best for us to skip the Pixel 11 series devices. We can shift our focus entirely to the upcoming Motorola devices instead. Pixel 10a was really a 9th gen Pixel, so hopefully the Pixel 11a does the same with 10th gen and includes MTE.
240
718
165
5,693
907,576
The refactoring will continue until morale improves
1
2
111
Logan Magee retweeted
This isn't even to say "just use firecracker". Go ahead and put gvisor in there, run unprivileged users inside of it, harden your OS, etc. You can increase attack costs by multiple orders of magnitude with a weekend of work.
1
1
11
479
Logan Magee retweeted
Surely at this point there has been >$1M tokens spent on trying to escape Firecracker and it hasn't happened. This should give everyone confidence that the "vulnpocalypse" is solved largely by doing the obvious work.
4
3
1
50
5,213
Software engineering is solved
1
80
Logan Magee retweeted
We know it's been a long time since our last progress update, so to keep you more in the loop, we're switching to more frequent, smaller posts from now on. We're getting ever closer to opening up app submissions to everyone. Thank you all for your support and patience!
1
45
591
Logan Magee retweeted
Progress update! We've been hard at work tackling Accrescent's most pressing development needs, and now we want to share what we've been working on. We'll post blog posts in the next few weeks detailing our security, stability, and feature progress along with what's next!
1
5
64
1,319
Apparently getting Claude to write \u-escaped versions of Unicode code points in Kotlin string literals (as opposed to the literal Unicode characters) is very difficult. It'll keep retrying with literal code points, and when it doesn't do that, it'll use extra backslashes
81
I'm reworking how Accrescent handles Android app versions, and it turns out that there's no consistent global ordering across all Android versions because of how Android composes longVersionCode and accepts negative versions 🫠. I don't think we need versionCodeMajor.
5
196
Logan Magee retweeted
We're happy to announce a long-term partnership with Motorola. We're collaborating on future devices meeting our privacy and security standards with official GrapheneOS support. motorolanews.com/motorola-th…
646
1,759
445
12,623
1,130,177
If you've wondered how Android developer verification affects Accrescent, today we have a new blog post explaining briefly what it is, how it impacts us, and how we're responding. blog.accrescent.app/posts/an…
7
25
1
175
22,592
It's time for an update! Check out our blog for a new update on: - What we've accomplished in the last 3 months - What's next for Accrescent Thank you to our supporters for making this possible! blog.accrescent.app/posts/ro…
1
6
59
3,502