heimskr

JSC security specialist

46 commits (8mo)
16 security fixes
View all commits on GitHub ↗

Summary

Works almost entirely inside JavaScriptCore, splitting time between new TC39 proposal implementations (Explicit Resource Management, Joint Iteration, RegExp Buffer Boundaries), test infrastructure (test262 runner rewrite, run-regexp-tests paths), and a dense run of engine-correctness fixes. The security work concentrates in the DFG/FTL pipeline — a stale structure bit in SlowPutArrayStorage, a missing ensureStillAliveHere in compileArrayIndexOfOrArrayIncludes, a use-after-free from a stale Wasm memory pointer folded by DFGConstantFoldingPhase, and incorrect def() values in DFGClobberize — with adjacent finds in resizable-ArrayBuffer reentrancy (TypedArray.from mapFn callback), inline-cache locking in repatchGetBySlowPathCall, and a WaiterListManager data race. Systematic-variant candidate: the clobberize/abstract-interpreter mismatch class, where a node's declared effects diverge from what it actually reads or writes, has yielded several distinct bugs here, and the sweep surface is every DFG node with a hand-written clobberize/def entry — plus the freshly enabled proposal implementations, which have not yet accumulated the same fix history.

Components

JSC
81%
Other
8%
WebCore
6%
WTF
2%
bmalloc
2%

Security Fix History

1 / 2

Hardening Commits

Recent Commits

1 / 4

← All Contributors