Full research report

Researchers Show a Single Malicious Webpage Visit Can Compromise Tor Browser

Original reporting โ†—
โ˜… Threat intelligence assessment medium confidence

Executive assessment

The central verified fact is a high-severity Firefox SpiderMonkey optimisation flaw fixed in Firefox 151.0.3, for which detailed public exploit material now exists. Nebula demonstrated that browser foothold as part of IonStack, pairing it with GhostLock to reach root on a supported ARM64 Android target. The Tor Browser claim is credible because it comes from the original researcher and is repeated by independent reporting, but no Tor-specific advisory or exact vulnerable release was found. Consequently, defenders should treat exposure as urgent where affected browser and kernel code coexist while avoiding the unsupported conclusion that active attacks or universal Tor Browser exposure have been established.

What happened

Nebula Security reported CVE-2026-10702 to Mozilla on 20 May 2026, and Mozilla released Firefox 151.0.3 with the fix on 2 June. During July, Nebula published analysis and public exploit material showing that a malicious webpage could obtain code execution in Firefox's sandboxed content process and serve as the first stage of its IonStack chain. The demonstrated chain paired the browser flaw with Linux kernel vulnerability CVE-2026-43499 to obtain root on a supported ARM64 Android build; reporting on the Tor Browser demonstration appeared on 29 July.

Affected scope

Mozilla confirms Firefox versions before the fixed Firefox 151.0.3 release are affected by CVE-2026-10702, although its advisory does not enumerate the complete vulnerable range or Firefox Extended Support Release scope. Nebula states that it also compromised Tor Browser, but the exact Tor Browser release, channel, operating system and embedded Firefox version used in that demonstration have not been published. CVE-2026-43499 affects Linux kernels containing the vulnerable rtmutex code introduced in 2011 and lacking the upstream correction, including relevant Android kernels; distribution-specific package status must be checked with each supplier.

Technical assessment

CVE-2026-10702 is a SpiderMonkey just-in-time compiler correctness flaw: an operation capable of changing object storage was represented too narrowly during optimisation, allowing compiled JavaScript to retain a stale memory reference and ultimately gain renderer-process memory access. Browser sandboxing limits that stage alone, but Nebula combined it with GhostLock, a Linux rtmutex rollback flaw that can leave a dangling kernel pointer when proxy-lock cleanup operates on the wrong task. Public code materially increases reproduction risk, but a published proof of concept and a laboratory chain do not establish attacks against users.

Recommended defensive actions

  1. update Firefox to version 151.0.3 or later across managed desktops and mobile devices.
  2. update Tor Browser to the latest release and verify its bundled Firefox version against Tor Project release information when a Tor-specific advisory becomes available.
  3. patch Linux and Android kernels using current supplier packages that include the CVE-2026-43499 correction and any subsequent stability fixes.
  4. inventory internet-facing, shared, container-hosting and mobile systems that combine vulnerable browser code with an affected Linux kernel.
  5. hunt for browser renderer crashes followed by unexpected child-process behaviour, privilege transitions or security-context changes on potentially exposed systems.
  6. verify endpoint and mobile controls detect unauthorised privilege escalation originating from browser processes rather than relying solely on webpage filtering.

Uncertainties and evidence gaps

  • No verified primary source identifies the exact Tor Browser release or build used in the demonstration, so the headline's Tor-wide scope cannot be precisely established.
  • Mozilla's advisory confirms the fixed Firefox release but does not enumerate the complete affected-version range or list Firefox Extended Support Release as affected.
  • The available evidence does not establish exploitation against users in the wild.
  • The demonstrated end-to-end chain is platform-specific; portability to other Android devices, desktop architectures or stronger browser sandboxes has not been independently established.
  • Nebula's page metadata and its embedded timeline give different July publication dates for the browser analysis.

Vulnerability flow

Defender-oriented path reconstructed only from sourced report findings. Unknown stages are omitted.

AccessThe browser stage requires a user to load attacker-controlled web content in a vulnerable Firefox-derived browser; the kernel stage requires code already executing locally, which the browser stage supplied in the demonstrated chain.
ComponentFirefox SpiderMonkey just-in-time compiler followed by the Linux kernel rtmutex and futex priority-inheritance boundary.
MechanismIncorrect compiler alias information permits reuse of stale browser memory, while erroneous proxy-lock rollback can leave a dangling kernel pointer associated with the wrong task.
ImpactCode execution in the sandboxed browser content process, followed on the demonstrated Android target by local privilege escalation to root and full device compromise.
DetectionCorrelate browser renderer crashes or anomalous memory-protection activity with subsequent unusual futex activity, privilege changes, container escape indicators or browser-originated execution in a privileged context.
MitigationUpgrade Firefox to 151.0.3 or later, update Tor Browser to its latest release, and install current vendor kernels containing the CVE-2026-43499 correction.
Exploitation status

No confirmed active exploitation; public proof-of-concept and exploit code are available, and researchers demonstrated a browser-to-kernel compromise chain against a supported ARM64 Android build.

The investigation began by testing whether the supplied report represented real-world attacks or a controlled vulnerability demonstration. Mozilla and National Vulnerability Database records confirm both CVEs and the Firefox fix, while Nebula's original research and repositories confirm public exploit material and a demonstrated two-stage chain. The evidence supports a serious, reproducible research result, but not confirmed active exploitation or a claim that every current Tor Browser release is vulnerable.

  1. What event and claims did the supplied story describe?
    Read the supplied article and followed its cited vendor, researcher, source-history and exploit references.
    thehackernews.com โ†—

    The article attributed a webpage-triggered Firefox renderer exploit and a Tor Browser demonstration to Nebula Security, then linked CVE-2026-43499 as the kernel escalation stage.

    why This separated the focused Tor claim from the broader IonStack research chain and identified the claims needing primary confirmation.

  2. Was there additional independent reporting or authoritative indexing for CVE-2026-10702?
    Performed four focused searches across major web-search services for CVE-2026-10702, Mozilla and Firefox.

    The searches yielded no additional usable corroborating result because result access was blocked or incomplete.

    why The lack of usable search results made direct review of the supplied primary references and authoritative vulnerability records necessary.

  3. Does Mozilla confirm the browser vulnerability and fixed release?
    Opened Mozilla Foundation Security Advisory 2026-54.
    mozilla.org โ†—

    Mozilla lists high-severity CVE-2026-10702 as a JavaScript engine JIT miscompilation and identifies Firefox 151.0.3 as fixed.

    why This independently validates the CVE, affected product and minimum fixed Firefox release without relying on the news article.

  4. What did the original browser researchers establish?
    Read Nebula Security's IonStack Part I analysis and disclosure timeline.
    nebusec.ai โ†—

    Nebula describes arbitrary code execution in the Firefox renderer, states that it used the flaw against Tor Browser, records disclosure on 20 May and the Firefox fix on 2 June, and recommends updating Firefox.

    why This confirms the technical mechanism and research demonstration while showing that the Tor claim currently rests primarily on the researcher's account.

  5. How does GhostLock relate to the browser story?
    Reviewed the separate reporting on CVE-2026-43499 and followed its primary references.
    thehackernews.com โ†—

    The report identifies GhostLock as a local Linux kernel privilege-escalation flaw with public exploit code and as IonStack's second stage.

    why This prevents conflating renderer code execution with root compromise and establishes the distinct prerequisites of the second vulnerability.

  6. Is public browser exploit material actually available?
    Opened Nebula Security's public CVE-2026-10702 repository directory.
    github.com โ†—

    The directory contains an exploit HTML file and associated JavaScript material for CVE-2026-10702.

    why This verifies public proof-of-concept availability but does not demonstrate exploitation in the wild.

  7. What is the kernel flaw's original technical and affected-scope assessment?
    Read Nebula Security's IonStack Part II analysis.
    nebusec.ai โ†—

    Nebula attributes GhostLock to rtmutex code introduced in Linux 2.6.39, describes unprivileged local root and container escape, and identifies an April 2026 upstream correction.

    why The source establishes the local-access boundary, broad kernel lineage and potential impact of the second stage.

  8. Do government vulnerability records corroborate both CVEs?
    Reviewed the National Vulnerability Database entries for CVE-2026-43499 and CVE-2026-10702.
    nvd.nist.gov โ†—

    The kernel record describes proxy-lock rollback operating on the wrong task, leaving a dangling pointer, and records a local low-privilege attack vector; the separately visited CVE-2026-10702 record confirms the Firefox JIT issue and version 151.0.3 fix.

    why These records independently corroborate the two security boundaries and show why the browser and kernel vulnerabilities must be assessed separately.

  9. Is working GhostLock code publicly accessible and platform-specific material present?
    Opened Nebula Security's public CVE-2026-43499 repository directory.
    github.com โ†—

    The repository exposes both proof-of-concept and exploit directories, including material described for a Pixel 6 target.

    why This confirms practical public exploit availability while supporting caution about generalising the demonstrated chain to every architecture and device.

TargetsFirefox usersTor Browser users running builds that incorporate the vulnerable Firefox codeARM64 Android devices using the supported research buildUnpatched Linux and Android systems affected by CVE-2026-43499

Research coverage

All 68 registered source leaves were evaluated for this run: 61 completed, 0 were unavailable, 0 failed and 7 were disabled. For this story, 2 registered sources supplied useful evidence (2 primary, 0 corroborating, 0 contextual and 0 PoC/exploit references). 59 completed sources contained no matched information for this story.

Primary evidence Independent corroboration Operational context PoC reference Checked โ€” no match Unavailable Failed Disabled
Complete source-by-source audit 68 sources
SourceRun resultValueWhy it was useful โ€” or not
NVDcve ok900 records Primary evidence2 matched items Supplied a vendor or government advisory opened and verified during focused research.
The Hacker Newsnews ok14 records Primary evidence1 matched items Published the source report used to frame and date the event.
AlienVault OTXdark_web ok10 records Checked โ€” no match The source completed, but none of its retained records matched this story.
BleepingComputernews ok9 records Checked โ€” no match The source completed, but none of its retained records matched this story.
CIRCL CVEcve ok30 records Checked โ€” no match The source completed, but none of its retained records matched this story.
CISA Alertsnews ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
CISA KEVkev ok1656 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Cisco PSIRTvendor_advisory ok5309 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Cisco Talosnews ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
deepdarkCTI CVE most exploiteddeepdarkcti ok94 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI Discorddeepdarkcti ok7 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI exploitsdeepdarkcti ok24 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI forumsdeepdarkcti ok260 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI malware as a servicedeepdarkcti ok7 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI malware samplesdeepdarkcti ok3 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI marketsdeepdarkcti ok127 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI phishingdeepdarkcti ok19 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI ransomware gangsdeepdarkcti ok667 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI RATsdeepdarkcti ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI Telegram infostealerdeepdarkcti ok130 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI Telegram threat actorsdeepdarkcti ok1005 records Checked โ€” no match The source completed, but none of its retained records matched this story.
deepdarkCTI Twitter threat actorsdeepdarkcti ok39 records Checked โ€” no match The source completed, but none of its retained records matched this story.
DNSDumpster domain IOC enrichmentresearch ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Exploit-DBexploit_reference ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
FIRST EPSSepss ok Checked โ€” no match The source completed, but none of its retained records matched this story.
Fortinet PSIRTvendor_advisory disabled Disabled Disabled in the source registry; no check was attempted.
GitHub topic: cveresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
GitHub topic: exploitresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
GitHub topic: penetration-testingresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
GitHub topic: pocresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
GitHub topic: vulnerabilityresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
GreyNoiseexploit_reference ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
KrebsOnSecuritynews ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
LinkedIn RSS proxy feeds (disabled)research disabled Disabled Disabled in the source registry; no check was attempted.
MalwareBazaardark_web ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #cveresearch ok20 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #cybersecurityresearch ok19 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #exploitresearch ok20 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #infosecresearch ok20 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #malwareresearch ok20 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #ransomwareresearch ok20 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #threatintelresearch ok14 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Mastodon #vulnerabilityresearch ok20 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Metasploit module metadataexploit_reference ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
Microsoft MSRCvendor_advisory ok1588 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Microsoft Securitynews ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
MISP Galaxyresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
MISP threat actor galaxyactor ok0 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Palo Alto Networks PSIRTvendor_advisory ok25 records Checked โ€” no match The source completed, but none of its retained records matched this story.
ProjectDiscovery nuclei templatesexploit_reference ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
Rapid7news ok2 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Reddit r/AskNetsec (pending API approval)research disabled Disabled Disabled in the source registry; no check was attempted.
Reddit r/cybersecurity (pending API approval)research disabled Disabled Disabled in the source registry; no check was attempted.
Reddit r/malware (pending API approval)research disabled Disabled Disabled in the source registry; no check was attempted.
Reddit r/netsec (pending API approval)research disabled Disabled Disabled in the source registry; no check was attempted.
Reddit r/ReverseEngineering (pending API approval)research disabled Disabled Disabled in the source registry; no check was attempted.
SANS ISCnews ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Shadowserver public aggregate honeypot observationsexploit_reference ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
Shodanresearch ok8 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Sigma Rulesresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
Sophos IOCsresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
ThreatFoxthreat_intelligence ok100 records Checked โ€” no match The source completed, but none of its retained records matched this story.
UK NCSCnews ok1 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Unit42 IOCsresearch ok empty0 records Checked โ€” no match The source completed but returned no records in the collection scope.
URLhausdark_web ok10 records Checked โ€” no match The source completed, but none of its retained records matched this story.
VirusTotal Community IOC enrichmentresearch ok4 records Checked โ€” no match The source completed, but none of its retained records matched this story.
VulnCheck KEVkev ok500 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Vulnerability Lookupcve ok30 records Checked โ€” no match The source completed, but none of its retained records matched this story.
Additional verified pages 12 opened outside the registered collection
Reporting-linked PoC claims4
https://github.com/NebuSec/CyberMeowfia/commits/main/IonStack/CVE-2026-10702 github.com โ†—

Linked by reporting but not validated as PoC by the configured exploit indexes.

https://github.com/NebuSec/CyberMeowfia/blob/main/IonStack/CVE-2026-10702/exploit.html github.com โ†—

Linked by reporting but not validated as PoC by the configured exploit indexes.

https://github.com/NebuSec/CyberMeowfia/tree/main/IonStack/CVE-2026-10702 github.com โ†—

Linked by reporting but not validated as PoC by the configured exploit indexes.

https://github.com/NebuSec/CyberMeowfia/tree/main/IonStack/CVE-2026-43499 github.com โ†—

Linked by reporting but not validated as PoC by the configured exploit indexes.

Technical references1
github.com/mozilla-firefox/firefox/commit/e43e678 โ†—

Repository captured from the source article as technical context; not validated as PoC or exploit code.

PoC & exploit code2
Nebula Security CVE-2026-10702 exploit material github.com โ†—

Public repository containing browser proof-of-concept and exploit material.

Nebula Security CVE-2026-43499 exploit material github.com โ†—

Public repository containing GhostLock proof-of-concept and platform-specific exploit code.

Vendor & gov advisories3
Mozilla Foundation Security Advisory 2026-54 mozilla.org โ†—

Mozilla rates CVE-2026-10702 high severity and identifies Firefox 151.0.3 as the fixed release.

NVD record for CVE-2026-10702 nvd.nist.gov โ†—

Confirms a Firefox JavaScript just-in-time compiler miscompilation fixed in Firefox 151.0.3.

NVD record for CVE-2026-43499 nvd.nist.gov โ†—

Describes the Linux rtmutex rollback error, dangling pointer and upstream correction.

Analysis & research4
IonStack Part I: CVE-2026-10702 Firefox SpiderMonkey JIT analysis nebusec.ai โ†—

Original researcher analysis, disclosure timeline and browser-stage technical findings.

IonStack Part II: GhostLock CVE-2026-43499 nebusec.ai โ†—

Original analysis of the Linux kernel privilege-escalation stage and affected code lineage.

Researchers Show a Single Malicious Webpage Visit Can Compromise Tor Browser thehackernews.com โ†—

Independent reporting connecting the two vulnerabilities and documenting unresolved Tor Browser version scope.

15-Year-Old GhostLock Flaw Enables Root and Container Escape on Most Linux Distros thehackernews.com โ†—

Independent reporting on GhostLock exploitation prerequisites, public code and patch availability.