Achierius
bmalloc security specialist
Summary
Works almost entirely in WebKit's allocator stack — libpas and bmalloc — with the recurring theme being MTE enablement: per-heap tagging policy, a tagged_bmalloc_heap, previous-tag-exclusion, MTE hard-mode re-enablement, and disabling TZone under MTE. Adjacent work touches JIT Cage relaxation, guard pages on the compact-heap reservation, and ParkingLot spinloop internals, so the footprint spans allocator hardening primitives rather than feature code. The security fixes cluster in the same place the feature work does — an OOB path in MAR code and a race in `pas_segregated_heap_medium_size_directory_for_index` — which makes newly-tagged heap paths and the MTE policy rework a reasonable sweep target for variant analysis.
Components
Security Fix History
Hardening Commits
- 2026-09-14 Fix TZone disablement when MTE is enabled
- 2026-06-30 Re-enable MTE hard-mode
- 2026-06-11 [libpas] Create new tagged_bmalloc_heap
- 2026-05-22 [libpas] Add a guard page to the front of the compact-heap reservation 2026-W20
- 2026-04-07 [libpas] Implement MTE Previous-Tag-Exclusion
- 2026-04-02 [libpas] Check previous tag on deallocation
- 2026-03-16 [libpas] Enable soft-mode and retag-on-scavenge
- 2026-03-07 [libpas] Enable soft-mode and retag-on-scavenge
- 2026-03-06 [libpas] Unconditionally tag-on-alloc
Recent Commits
- 2026-09-14 Fix TZone disablement when MTE is enabled
- 2026-09-10 [libpas] Replace MTE enablement bool with a tri-state
- 2026-08-27 [libpas] Inline PAS_MTE_HANDLEs which resolve to PAS_MTE_CLEAR*
- 2026-08-08 Drop cached SequesteredMalloc arena granules on memory-pressure notification
- 2026-08-07 [libpas] Inline PAS_MTE_HANDLEs which resolve to PAS_MTE_CLEAR*
- 2026-08-06 Implement JIT Cage Relaxation
- 2026-07-17 [libpas] Rework per-heap tagging policy logic
- 2026-07-01 Unreviewed, reverting 315921@main (6db83a42f97a)
- 2026-07-01 [libpas] Fix OoBable code-paths in MAR code ·
- 2026-07-01 [libpas] Fix race in pas_segregated_heap_medium_size_directory_for_index ·
- 2026-06-30 Re-enable MTE hard-mode
- 2026-06-26 [libpas] Rework per-heap tagging policy logic
- 2026-06-24 [libpas] Split pas_deallocate into inline-only and casual variants
- 2026-06-17 Change WTF, libpas exception codes to 0xbb08
- 2026-06-16 [libpas] Increase xctest timeout to 60m