CVERadar
HIGH · CVSS 3.1 8.8Exploit-DBPublic PoCEPSS 70.66% (p99)Threat level 72

CVE-2024-4367: CVE-2024-4367: A type check was missing when handling fonts in PDF.js, which would allow arbitrary JavaSc…

mozilla · firefox · NVD published 2024-05-14 · posted 2024-05-20 · last modified 2026-06-17

What it is

A type check was missing when handling fonts in PDF.js, which would allow arbitrary JavaScript execution in the PDF.js context. This vulnerability affects Firefox < 126, Firefox ESR < 115.11, and Thunderbird < 115.11.

WeaknessCWE-754
CVSS vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H (source: [email protected])
ATT&CK tacticsn/a

Exploitation evidence

First exploit evidence seen: 2024-05-20 (earliest date across the sources below).

Exploited in the wild

No source on this site lists in-the-wild exploitation yet (CISA KEV, VulnCheck KEV).

Public exploit code

Exploit-DB

  • EDB-52273: Firefox ESR 115.11 - PDF.js Arbitrary JavaScript execution (2025-04-22)

GitHub proof-of-concept repositories

28 public repositories from 28 accounts, first seen 2024-05-20. Most starred: LOURC0D3/CVE-2024-4367-PoC (202 stars), view repository.

Verify before running: public PoCs can be malicious. Read the code and only run it in an isolated lab. A PoC means exploit code is public, not that this CVE is exploited in the wild.

Sources: Exploit-DB (OffSec) · nomi-sec/PoC-in-GitHub.

No ATT&CK techniques could be mapped or inferred for this CVE yet.

How to fix it

Fixed versions

  • mozilla firefox: upgrade to 115.11.0 or later
  • mozilla firefox: upgrade to 126.0 or later
  • mozilla thunderbird: upgrade to 115.11.0 or later
  • open-xchange open-xchange appsuite frontend: upgrade to 7.10.6 or later

Derived from the NVD CPE configuration (versionEndExcluding / versionEndIncluding). Always confirm with the vendor advisory.

Vendor advisories and patches

Detection Generic guidance

    Response checklist Generic guidance

    1. Inventory: find every instance of the affected product and version (include internet-facing and forgotten ones).
    2. Patch or mitigate per the vendor advisory; if you cannot patch, remove internet exposure or apply the vendor workaround.
    3. Assume compromise if the system was exposed before patching: hunt for the indicators in the advisory and review logs back to the disclosure date.
    4. Rotate credentials and secrets stored on or used by the affected system if compromise cannot be ruled out.

    Sources