Reports
Weekly WebKit security reports. Filtered by Other.
-
W39
16 picks from 620 commits 2026-09-26 – 10-02 6 security 10 dev v1.11.0
A compromised renderer could take another navigation's response just by naming it.; CSP blocked the style attribute, unless it was parsed somewhere with no policy.; Under Site Isolation, the UI process relayed postMessage origins it never checked.
LogicError3Other1UAF1CrossOrigin1+3 -
W38
16 picks from 518 commits 2026-09-19 – 25 6 security 10 dev v1.10.1
Two iframes, two Set prototypes, and the compiled code watching the wrong one.; Instruction selection sank an atomic past memory.grow, onto memory already freed.; The canvas save stack hit its cap, and the cap stopped being a resource limit.
Other4LogicError2CrossOrigin2AuthBypass1+3 -
W34
16 picks from 454 commits 2026-08-22 – 28 6 security 10 dev v1.9.0
A prior fix taught one `End` handler to widen. The parser has two.; DFG liveness is a union over CFG successors. A catch handler isn't one.; A cross-instance tail call installs the callee's bounds limit, then overwrites it.
UAF10TypeConfusion10OOB6IntegerOverflow5+15 -
W32
7 picks from 384 commits 2026-08-08 – 14 6 security 1 dev v1.3.3
Sixteen storage handlers took an integer as proof you owned the file.; Another site's cache will happily serve back what you wrote into it.; A shadow-DOM cache that outlived the table it was stored inside.
AuthBypass2CrossOrigin2Race2TypeConfusion2+5 -
W27
6 picks from 447 commits 2026-07-04 – 10 6 security v1.3.2
The per-thread isolation held at every level except the one that made levels.; Overwriting a callback was a free, and a real-time thread was inside it.; Three code paths dropped the pointer. Only the destructor remembered to detach.
UAF4AuthBypass3Other2 -
W26
8 picks from 557 commits 2026-06-27 – 07-03 6 security 2 dev v1.7.0
Omit one argument and the promise-pair bindings hand you an exception cell.; A buffer you can free between assigning it and pressing play.; A compromised renderer names a file it can't read, and Safari hands it back.
UAF41Race20AuthBypass17LogicError15+61 -
W25
6 picks 2026-06-20 – 26 6 security v1.3.2
The UI process asked the sandbox which site it was talking to.; Two threads, one easing curve, and a reference count that couldn't count.; A frame ID is a name, not a permission — the pasteboard disagreed.
CrossOrigin2AuthBypass1Other1UAF1+1 -
W22
9 picks 2026-05-30 – 06-05 6 security 3 dev v1.3.3
The CORS policy took a detour through the process it was written to contain.; The eval cache kept a raw pointer that nothing was keeping alive.; The array that came back from an OSR exit disagreed with itself about its layout.
CrossOrigin6Other5UAF4LogicError3+10 -
W21
6 picks 2026-05-23 – 29 6 security v1.3.3
B3 was right that the value was dead — the collector agreed, and freed it.; The DFG certified a property absent from an object that owned it outright.; An IC exit undid a stack adjustment that had never happened.
UAF10OOB5AuthBypass5LogicError5+17 -
W20
16 picks 2026-05-16 – 22 6 security 10 dev v1.5.0
The collector was never told where the exit stub parked its pointers; Nine arguments, six registers, and zero bytes reserved for the overflow; A private field read that answers with the prototype's value
UAF4Other3LogicError2MemoryCorruption2+6 -
W19
14 picks 2026-05-09 – 15 4 security 10 dev v1.7.0
The Metal validator turned an attacker-sized upload into a crash — where it runs.; A modal context menu that never stopped listening to the web process.; It shipped as a hit-rate fix, on eight cache slots of live CoreGraphics handles.
TypeConfusion6UAF3Other2LogicError1+2 -
W18
15 picks 2026-05-02 – 08 5 security 10 dev v1.7.0
A stylesheet and one getComputedStyle() call read freed token storage.; The object-src spelling that looks like deny-all was the permissive one.; The GPU process let the renderer vote on which draft extensions it could use.
Other3UAF3CrossOrigin2IntegerOverflow2+5