Making slow and steady progress on github.com/AndroidHardeni including testing out Android support in a development branch.
It requires some changes in Bionic and I'll hold off on merging it into master until I'm ready to start publishing those other repositories in a usable form.
Conversation
The last piece of the core implementation will be github.com/AndroidHardeni for efficient 16/32/48 byte size classes. It needs a bit of refinement before merging.
There are a bunch of security features to implement along with arenas, but it all fits cleanly into this foundation.
1
Most of the planned features on top of this base are listed at github.com/AndroidHardeni. Currently testing and refining initial implementations of slab allocation canaries, guard slabs and a basic virtual memory quarantine so those are probably next to land.
1
There are many heuristics, thresholds and other parameters requiring testing and tuning based on balancing memory usage, performance and security. Lots of the initial approach is intentionally overly simplistic and it uses fairly arbitrary values. Needs a lot of optimization too.
