szewai
WebKit security specialist
Summary
szewai works almost entirely in the WebKit2 process layer on Site Isolation: BrowsingContextGroup registration, frame/process lifetime and teardown ordering, drawing-area swaps across process changes, and the shared process mode with its persistent IsolatedSiteStore. The security-classified work is narrow but uniform in kind — connection-to-identifier authorization checks on storage IPC (DOMCache, FileSystemHandle) — alongside policy fences that keep loopback/local-network and high-value fraud-target domains out of the shared process, and IPC surface gated behind AllowTestOnlyIPC. Where to look next: shared process mode is recent code that carries isolation-relevant invariants, and this contributor's own commit stream already documents those invariants failing — sandbox flags surviving a same-process navigation, a dialog from a document the page has left still reaching the client, frame processes terminated before pageswap and unload handlers run, and find-in-page leaking per-process match counts. Each is a cross-process state-synchronization bug in the same subsystem, which makes the shared-process paths a reasonable place to sweep for variants.
Components
Security Fix History
- 2026-08-21 Enable storage site validation 2026-W33
- 2026-08-13 Validate connection access to DOMCache with DOMCacheIdentifier 2026-W32
- 2026-08-13 Validate connection access to FileSystem storage with FileSystemHandleIdentifier 2026-W32
- 2026-06-30 Gate CacheStorageRepresentation IPC behind AllowTestOnlyIPC ·
- 2026-06-03 [IndexedDB] Use-After-Free caused by use of `-0.0` for HashMap Key ·
- 2026-06-03 [IndexedDB] IDBKeyData operator== and operator<=> define different equivalence classes ·
- 2025-12-13 Fix use-after-free in IDBTransaction::abortInProgressOperations
Hardening Commits
- 2026-08-21 Enable storage site validation 2026-W33
- 2026-08-13 Validate connection access to DOMCache with DOMCacheIdentifier 2026-W32
- 2026-08-13 Validate connection access to FileSystem storage with FileSystemHandleIdentifier 2026-W32
- 2026-07-24 [Site Isolation] Loopback/local-network sites should not enter shared process
- 2026-06-30 Gate CacheStorageRepresentation IPC behind AllowTestOnlyIPC ·
- 2026-05-18 Check m_closed in NetworkStorageManager::donePrepareForEviction
- 2026-04-23 Add site validation to StorageManager and FileSystem message handlers
- 2026-04-22 Add site validation to CacheStorage message handlers
- 2026-04-14 Add site validation to IndexedDB message handlers
- 2026-04-13 Use Variant instead of raw pointer union in IndexValueEntry
Recent Commits
- 2026-09-18 [Site Isolation][macOS]REGRESSION(315480@main): TestWebKitAPI.ProcessSwap.PageCacheWhenNavigatingFromJS (api-test) is a
- 2026-09-18 [Site Isolation] Enable shared process mode by default 2026-W37
- 2026-09-18 [Site Isolation] Stranded async back/forward state drops unrelated back/forward navigations
- 2026-09-17 [Site Isolation] SiteIsolation.UnresponsiveProcessMousedown fails under shared process mode
- 2026-09-16 [Site Isolation] TestWebKitAPI.EnhancedSecurityPolicies.IframeKeepsSiteOutOfEnhancedSecurityProcessWithSiteIsolation cra
- 2026-09-15 Back/forward cache restore reports the outgoing document's identity in didCommitLoadForFrame 2026-W37
- 2026-09-14 [Site Isolation] BrowsingContextGroup::addPage may create a remote page for a terminated shared process
- 2026-09-11 [Site Isolation] TestWebKitAPI.SiteIsolation.Events can fail due to missing resize event
- 2026-09-10 [Site Isolation] A dialog from a document the page has left can still reach the client
- 2026-09-09 NEW TEST(319873@main): [iOS] TestWebKitAPI.IndexedDB.TransactionOfSuspendedProcessIsNotAbortedByItsOwnQueuedTransaction
- 2026-09-09 [Site Isolation] Remove process model validation in SiteIsolation.MultiProcessBFCacheSameSiteWithDifferentCrossSiteIfram
- 2026-09-08 [Site Isolation] Removing sandbox attribute does not clear frame's sandbox flags on a same-process navigation
- 2026-09-08 [Site Isolation] Adopt the root compositing layer when swapping drawing areas
- 2026-09-03 [Site Isolation] New pages added to BrowsingContextGroup are not registered with shared process
- 2026-09-01 Add logging when LocalStorage database file gets deleted