CVE-2020-15652
Medium · 6.5CVSS
6.5
EPSS
1.3%
Published
Aug 10, 2020
CISA due date
—
Cloudanix analysis
A browser flaw could let a malicious website learn where a user was redirected after visiting another site.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Data Exposure
- Component
- Application
- Class
- Information Disclosure
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Observing stack traces from JavaScript errors inside web workers allows leakage of cross-origin redirect results when the content is parsable as script.
Why it matters to the business
Attackers may obtain sensitive navigation or redirect information that could assist targeted follow-on attacks against users of affected browsers.
How an attack unfolds
An attacker hosts or compromises a site that triggers a cross-origin redirect to script-parsable content inside a web worker, forces a JavaScript error, and reads the resulting stack trace to recover the redirect destination.
How to fix it
Upgrade Firefox to 79 or later, Firefox ESR to 68.11 or 78.1 or later, and Thunderbird to 68.11 or 78.1 or later. Apply vendor updates as soon as available for any downstream distributions.
How to confirm the fix worked
Confirm browser versions meet or exceed the fixed releases listed by the vendor; re-test cross-origin redirect behavior in web workers to ensure stack traces no longer expose redirect targets.
Typical attack path
- Lure victim to attacker-controlled page that loads malicious script in a web worker
- Trigger cross-origin redirect to target resource parsable as script
- Induce JavaScript error whose stack trace is observable
- Extract redirect target from the leaked stack trace
How to detect it
Review web server or proxy logs for unusual sequences of cross-origin requests followed by worker script loads; browser telemetry or crash reports showing stack traces containing redirect URLs may indicate attempted exploitation.
What your security team should do
- Prioritize browser and mail client updates across all endpoints
- Monitor vendor advisories for any additional affected products
- Educate users on keeping browsers current given the age of the disclosure
The record
By observing the stack trace for JavaScript errors in web workers, it was possible to leak the result of a cross-origin redirect. This applied only to content that can be parsed as script. This vulnerability affects Firefox < 79, Firefox ESR < 68.11, Firefox ESR < 78.1, Thunderbird < 68.11, and Thunderbird < 78.1.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:10 | firefox-esr | 0 | 68.11.0esr-1~deb10u1 |
| Debian:10 | thunderbird | 0 | 1:68.11.0-1~deb10u1 |
| Debian:11 | firefox-esr | 0 | 68.11.0esr-1 |
| Debian:11 | thunderbird | 0 | 1:68.11.0-1 |
| Debian:12 | firefox-esr | 0 | 68.11.0esr-1 |
| Debian:12 | thunderbird | 0 | 1:68.11.0-1 |
| Debian:13 | firefox-esr | 0 | 68.11.0esr-1 |
| Debian:13 | thunderbird | 0 | 1:68.11.0-1 |
| Debian:9 | firefox-esr | 0 | 68.11.0esr-1~deb9u1 |
| Debian:9 | thunderbird | 0 | 1:68.11.0-1~deb9u1 |
| Mageia:7 | firefox | 0 | 68.11.0-1.mga7 |
| Mageia:7 | firefox-l10n | 0 | 68.11.0-1.mga7 |
| Mageia:7 | nspr | 0 | 4.27-1.mga7 |
| Mageia:7 | nss | 0 | 3.52.1-1.2.mga7 |
| Mageia:7 | thunderbird | 0 | 68.11.0-1.mga7 |
| Mageia:7 | thunderbird-l10n | 0 | 68.11.0-1.mga7 |
| Red Hat:enterprise_linux:6::client | firefox | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::client | firefox-debuginfo | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::client | thunderbird | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::client | thunderbird-debuginfo | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::computenode | firefox | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::computenode | firefox-debuginfo | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::server | firefox | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::server | firefox-debuginfo | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::server | thunderbird | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::server | thunderbird-debuginfo | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::workstation | firefox | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::workstation | firefox-debuginfo | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::workstation | thunderbird | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:6::workstation | thunderbird-debuginfo | 0 | 0:68.11.0-1.el6_10 |
| Red Hat:enterprise_linux:7::client | firefox | 0 | 0:68.11.0-1.el7_8 |
| Red Hat:enterprise_linux:7::client | firefox-debuginfo | 0 | 0:68.11.0-1.el7_8 |
| Red Hat:enterprise_linux:7::client | thunderbird | 0 | 0:68.11.0-1.el7_8 |
| Red Hat:enterprise_linux:7::client | thunderbird-debuginfo | 0 | 0:68.11.0-1.el7_8 |
| Red Hat:enterprise_linux:7::server | firefox | 0 | 0:68.11.0-1.el7_8 |
| Red Hat:enterprise_linux:7::server | firefox-debuginfo | 0 | 0:68.11.0-1.el7_8 |
| Red Hat:enterprise_linux:7::server | thunderbird | 0 | 0:68.11.0-1.el7_8 |
| Red Hat:enterprise_linux:7::server | thunderbird-debuginfo | 0 | 0:68.11.0-1.el7_8 |
| Red Hat:enterprise_linux:7::workstation | firefox | 0 | 0:68.11.0-1.el7_8 |
| Red Hat:enterprise_linux:7::workstation | firefox-debuginfo | 0 | 0:68.11.0-1.el7_8 |
| Red Hat:enterprise_linux:7::workstation | thunderbird | 0 | 0:68.11.0-1.el7_8 |
| Red Hat:enterprise_linux:7::workstation | thunderbird-debuginfo | 0 | 0:68.11.0-1.el7_8 |
| Red Hat:enterprise_linux:8::appstream | firefox | 0 | 0:68.11.0-1.el8_2 |
| Red Hat:enterprise_linux:8::appstream | firefox-debuginfo | 0 | 0:68.11.0-1.el8_2 |
| Red Hat:enterprise_linux:8::appstream | firefox-debugsource | 0 | 0:68.11.0-1.el8_2 |
| Red Hat:enterprise_linux:8::appstream | thunderbird | 0 | 0:68.11.0-1.el8_2 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debuginfo | 0 | 0:68.11.0-1.el8_2 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debugsource | 0 | 0:68.11.0-1.el8_2 |
| Red Hat:rhel_e4s:8.0::appstream | firefox | 0 | 0:68.11.0-1.el8_0 |
| Red Hat:rhel_e4s:8.0::appstream | firefox-debuginfo | 0 | 0:68.11.0-1.el8_0 |
| Red Hat:rhel_e4s:8.0::appstream | firefox-debugsource | 0 | 0:68.11.0-1.el8_0 |
| Red Hat:rhel_e4s:8.0::appstream | thunderbird | 0 | 0:68.11.0-1.el8_0 |
| Red Hat:rhel_e4s:8.0::appstream | thunderbird-debuginfo | 0 | 0:68.11.0-1.el8_0 |
| Red Hat:rhel_e4s:8.0::appstream | thunderbird-debugsource | 0 | 0:68.11.0-1.el8_0 |
| Red Hat:rhel_eus:8.1::appstream | firefox | 0 | 0:68.11.0-1.el8_1 |
| Red Hat:rhel_eus:8.1::appstream | firefox-debuginfo | 0 | 0:68.11.0-1.el8_1 |
| Red Hat:rhel_eus:8.1::appstream | firefox-debugsource | 0 | 0:68.11.0-1.el8_1 |
| Red Hat:rhel_eus:8.1::appstream | thunderbird | 0 | 0:68.11.0-1.el8_1 |
| Red Hat:rhel_eus:8.1::appstream | thunderbird-debuginfo | 0 | 0:68.11.0-1.el8_1 |
| Red Hat:rhel_eus:8.1::appstream | thunderbird-debugsource | 0 | 0:68.11.0-1.el8_1 |
| SUSE:Enterprise Storage 5 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:HPE Helion OpenStack 8 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP1 | MozillaFirefox | 0 | 78.1.0-3.100.2 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP2 | MozillaFirefox | 0 | 78.1.0-8.3.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP2 | MozillaFirefox-branding-SLE | 0 | 78-9.2.4 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP2 | pipewire | 0 | 0.3.6-3.3.2 |
| SUSE:Linux Enterprise Server 11 SP4-LTSS | MozillaFirefox | 0 | 78.1.0-78.87.1 |
| SUSE:Linux Enterprise Server 12 SP2-BCL | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:Linux Enterprise Server 12 SP2-LTSS | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:Linux Enterprise Server 12 SP3-BCL | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:Linux Enterprise Server 12 SP3-LTSS | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:Linux Enterprise Server 12 SP4-LTSS | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:Linux Enterprise Server 12 SP5 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP2 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP3 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP4 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP1 | MozillaThunderbird | 0 | 68.11.0-3.91.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP2 | MozillaThunderbird | 0 | 68.11.0-3.91.1 |
| SUSE:OpenStack Cloud 7 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:OpenStack Cloud 8 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:OpenStack Cloud 9 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:OpenStack Cloud Crowbar 8 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| SUSE:OpenStack Cloud Crowbar 9 | MozillaFirefox | 0 | 78.1.0-112.8.1 |
| Ubuntu:16.04:LTS | firefox | 0 | 79.0+build1-0ubuntu0.16.04.2 |
| Ubuntu:18.04:LTS | firefox | 0 | 79.0+build1-0ubuntu0.18.04.1 |
| Ubuntu:18.04:LTS | mozjs38 | 0 | No fix |
| Ubuntu:18.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:18.04:LTS | thunderbird | 0 | 1:78.8.1+build1-0ubuntu0.18.04.1 |
| Ubuntu:20.04:LTS | firefox | 0 | 79.0+build1-0ubuntu0.20.04.1 |
| Ubuntu:20.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:20.04:LTS | mozjs68 | 0 | No fix |
| Ubuntu:20.04:LTS | thunderbird | 0 | 1:78.7.1+build1-0ubuntu0.20.04.1 |
| Ubuntu:Pro:18.04:LTS | mozjs38 | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | mozjs68 | 0 | No fix |
| openSUSE:Leap 15.1 | MozillaFirefox | 0 | 78.1.0-lp151.2.61.1 |
| openSUSE:Leap 15.1 | MozillaThunderbird | 0 | 68.11.0-lp151.2.47.1 |
| openSUSE:Leap 15.2 | MozillaFirefox | 0 | 78.1.0-lp152.2.12.1 |
| openSUSE:Leap 15.2 | MozillaFirefox | 0 | 78.1.0-lp152.2.15.1 |
| openSUSE:Leap 15.2 | MozillaThunderbird | 0 | 68.11.0-lp152.2.7.1 |
| openSUSE:Leap 15.2 | pipewire | 0 | 0.3.6-lp152.2.3.1 |
| openSUSE:Tumbleweed | MozillaFirefox | 0 | 92.0-1.2 |
| openSUSE:Tumbleweed | MozillaThunderbird | 0 | 91.1.1-1.1 |
| openSUSE:Tumbleweed | firefox-esr | 0 | 128.5.1-1.1 |
Related vulnerabilities
- CVE-2024-5696 By manipulating the text in an `input` tag, an attacker could have caused corrupt memory… Also affects firefox-esr
- CVE-2024-5700 Memory safety bugs present in Firefox 126, Firefox ESR 115.11, and Thunderbird 115.11. Also affects firefox-esr
- CVE-2024-5702 Memory corruption in the networking stack could have led to a potentially exploitable… Also affects firefox-esr
- CVE-2024-5693 Offscreen Canvas did not properly track cross-origin tainting, which could be used to… Also affects firefox-esr
- CVE-2024-5688 If a garbage collection was triggered at the right time, a use-after-free could have… Also affects firefox-esr
- CVE-2024-5691 By tricking the browser with a `X-Frame-Options` header, a sandboxed iframe could have… Also affects firefox-esr
- CVE-2024-5690 By monitoring the time certain operations take, an attacker could have guessed which… Also affects firefox-esr
- CVE-2024-4777 Memory safety bugs present in Firefox 125, Firefox ESR 115.10, and Thunderbird 115.10. Also affects firefox-esr