WebKit Leaks Real IPs in Proxy Browsers and iCloud Private Relay
Three WebKit features bypass proxy configurations on iOS and macOS, exposing users' real IP addresses and DNS servers. The leaks affect all WebKit-based proxy browsers, including iOS Tor browsers, and Apple's iCloud Private Relay. Psylo 1.3.1 patches them, but other browsers remain vulnerable.
The Leaks
1. DNS Prefetching
`` tags make WebKit resolve hostnames through the device's normal DNS path, ignoring the browser's proxy. A malicious site can embed unique subdomains in these tags and log the DNS queries at its authoritative server. The queries arrive from the user's real network, not the proxy. This leak appeared in iOS 26.0 (September 2025) when WebKit enabled prefetching for iOS. It affects iCloud Private Relay because the prefetch bypasses Safari's proxied DNS.
2. WebAuthn Related Origin Requests
When a page requests a passkey with a different rpId, the operating system's credential service fetches https:///.well-known/webauthn directly from the device. This fetch bypasses the browser's proxy, exposing the real IP. The feature is available since iOS 18.0 (September 2024). Even without user interaction, a page can trigger this via mediation: "conditional". Private Relay is also bypassed because the OS credential service issues the request outside Safari.
3. WebTransport
new WebTransport(url) opens a direct QUIC/HTTP3 connection from the device, bypassing the proxy. This exposes the real IP. WebTransport was enabled in iOS 26.4 (March 2026). Private Relay doesn't proxy these connections either. The only exception: Onion Browser's "Silver" security level uses Lockdown Mode, which disables WebTransport.
Who's Affected
Apple's App Store requires all iOS browsers to use WebKit. Any browser using WKWebsiteDataStore.proxyConfigurations is vulnerable. This includes Tor browsers on iOS and Psylo. VPNs are not affected because they tunnel all system traffic.
Fixes in Psylo 1.3.1
Psylo 1.3.1 blocks dns-prefetch hints, disables WebTransport, and disables WebAuthn by default. Users can re-enable WebTransport and WebAuthn per-silo (per-site) if needed. This opt-in model keeps privacy trade-offs explicit.
What Developers Should Do
If you maintain a WebKit-based browser that supports proxies, you must address these leaks. Block dns-prefetch by stripping the tags or overriding the network stack. Disable WebTransport and WebAuthn by default, or implement a similar per-site toggle. For app developers using WKWebView, review your proxy configuration and consider adding the same mitigations. Users of proxy browsers should check for updates and test with leaks.psylo.app.
The Tor Project and Onion Browser developers have been notified. Until they patch, iOS Tor browser users may be exposed. iCloud Private Relay users should be aware that it does not protect against these leaks.
Technical Detail
- DNS prefetching was enabled in iOS 26.0 (bug 285744).
- WebAuthn Related Origin Requests shipped in iOS 18.0 (bug 268426).
- WebTransport enabled in iOS 26.4 (bug 303453).
These are not theoretical. The author's proof-of-concept at leaks.psylo.app demonstrates all three leaks.
Conclusion
These leaks undermine the core promise of proxy browsers. If you use one, demand a fix. If you build one, patch now. Your users' IPs are at stake.




