charliewolfe
WebCore security specialist
Summary
Primarily works the WebKit networking process and its WebCore-side privacy surfaces — cookies, CSP, ITP/Resource Load Statistics, storage access — with a secondary line in Site Isolation and frame/process plumbing. The security fixes cluster tightly on IPC entry points into the network process: scheme and cookie-access validation on `LoadImageForDecoding`, message validation for ITP and storage-access calls, removal of a trusted `treatAsSameOriginNavigation` field from `NavigationActionData`, and narrowing a blanket storage-root path allowance in blob access enforcement — i.e. a web-process-supplied argument being trusted by the network process. Systematic-variant candidate: the remaining `NetworkConnectionToWebProcess` message handlers, checked for the same pattern of unvalidated origin, scheme, or file-path parameters crossing from the web process.
Components
Security Fix History
- 2026-07-07 com.apple.WebKit.Networking at Received an invalid message 'NetworkConnectionToWebProcess_LoadImageForDecoding' ·
- 2026-07-07 Add scheme and cookie access validation to LoadImageForDecoding 2026-W27
- 2026-07-02 Remove blanket storage-root file path allow from blob access enforcement ·
- 2026-07-01 Remove treatAsSameOriginNavigation from NavigationActionData IPC ·
- 2026-06-30 Validate several ITP and storage access IPC messages ·
- 2026-06-30 Reject requestStorageAccess() without gesture should not synthesize user activation ·
- 2026-06-16 GetPasteboardPathnamesForType IPC allows types-only pasteboard access to read file paths ·
- 2026-06-12 REGRESSION(305199@main): Crash in `SourceBufferPrivate::removeCodedFramesInternal` ·
- 2026-06-10 Undefined left-shift in AV1 readULEBSize() ·
- 2026-06-10 TrackPrivateBase::removeClient has an inverted bounds check ·
Hardening Commits
- No hardening commits recorded
Recent Commits
- 2026-08-07 Plug-in byte-range requests are blocked by connect-src instead of being governed by object-src
- 2026-08-06 [macOS iOS DEBUG]REGRESSION(317335@main): ipc/loadping-firstpartyforcookies-message-check.html (layout-tests) is a const
- 2026-07-31 REGRESSION(288096@main): ITP may cap the expiry of cookies set by a top-level navigation's own response
- 2026-07-30 [css-inline] Preserve fractional central baselines for atomic inlines
- 2026-07-28 [Cookie Store] Preserve cookie change subscription list order
- 2026-07-28 Make `BackForwardGoToItem` asynchronous
- 2026-07-26 [Site Isolation] REGRESSION(315872@main): Event coordinates are offset by the scroll position in isolated iframes
- 2026-07-23 Expose navigator.globalPrivacyControl only when enabled through the WKWebpagePreferences API
- 2026-07-23 Show process ID label alongside frame process border indicators
- 2026-07-23 Text translated from an RTL language keeps RTL selection behavior
- 2026-07-17 Remove `DidReceiveEventIPC`
- 2026-07-16 Revert 315959@main
- 2026-07-13 isQuarantinedAndNotUserApproved() should use the parsed file URL instead of re-parsing the path
- 2026-07-07 com.apple.WebKit.Networking at Received an invalid message 'NetworkConnectionToWebProcess_LoadImageForDecoding' ·
- 2026-07-07 Add scheme and cookie access validation to LoadImageForDecoding 2026-W27