Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
WebKit-NavigationAPI-SOP-Bypass — WebKit NavigateEvent.canIntercept SOP bypass via cross-port interception — iOS 26.3.1 BSI (CVE-2026-20643) | Kitploit
Tools/GitHubGitHub/0xjohnnydev/webkit-navigationapi-sop-bypass
Vulnerability AnalysisWeb Application ExploitationWeb SecurityMobile SecurityBinary Analysis
GitHub0xjohnnydev/webkit-navigationapi-sop-bypass

WebKit-NavigationAPI-SOP-Bypass

WebKit NavigateEvent.canIntercept SOP bypass via cross-port interception — iOS 26.3.1 BSI (CVE-2026-20643)

View Repository

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share
1951 month agoNot yet reviewed

WebKit-NavigationAPI-SOP-Bypass

WebKit Navigation API — Same-Origin Policy bypass via cross-port interception (CVE-2026-20643)

CVECVE-2026-20643
Discovered byThomas Espach (WebKit Bugzilla 306050)
ComponentWebKit — WebCore::Navigation::innerDispatchNavigateEvent
AffectediOS 26.3.1 build 23D8133 (iPhone18,2)
ClassSOP bypass
InteractionClick / link activation
ConfirmedBinary diff of vulnerable vs patched WebCore

Summary

NavigateEvent.canIntercept incorrectly returns true for same-site, cross-port navigations that differ in origin. The interception gate accepts any HTTP-family target after a same-site check without verifying that scheme, host, and port all match. This lets an attacker-controlled page intercept or suppress navigations that should cross an origin boundary.

Root Cause

root@kitploit:~
// WebCore::Navigation::innerDispatchNavigateEvent — 0x1a1303304 (iOS 26.3.1 / 23D8133)

if (!isSameSite && !isSameOrigin)
    return false;
if (targetURL.protocolIsInHTTPFamily())
    return true;  // ← no port/host/scheme component equality check
                  //   cross-port navigations (e.g. :8000 → :8800) slip through

The WebKit mainline fix adds strict per-component equality (scheme / user / password / host / port) before allowing interception.

PoC

Serve poc_min.html on port 8000 and open it on an affected device:

root@kitploit:~
python3 -m http.server 8000
# http://127.0.0.1:8000/poc_min.html

Click Run PoC. The page triggers a cross-port navigation (:8000 → :8800) and reports:

root@kitploit:~
Vulnerable:  canIntercept=true
Patched:     canIntercept=false

Files

File
findings.mdFull root cause write-up and RE evidence
poc_min.htmlSelf-contained detection PoC
Download Tool