CVE-2023-44402
ASAR Integrity bypass via filetype confusion in electron
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
0Exploited in Wild
-Decision
Descriptions
Electron is an open source framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. This only impacts apps that have the `embeddedAsarIntegrityValidation` and `onlyLoadAppFromAsar` fuses enabled. Apps without these fuses enabled are not impacted. This issue is specific to macOS as these fuses are only currently supported on macOS. Specifically this issue can only be exploited if your app is launched from a filesystem the attacker has write access too. i.e. the ability to edit files inside the `.app` bundle on macOS which these fuses are supposed to protect against. There are no app side workarounds, you must update to a patched version of Electron.
Electron es un framework de código abierto para escribir aplicaciones de escritorio multiplataforma utilizando JavaScript, HTML y CSS. Esto solo afecta a las aplicaciones que tienen habilitados los fusibles "embeddedAsarIntegrityValidation" y "onlyLoadAppFromAsar". Las aplicaciones sin estos fusibles habilitados no se ven afectadas. Este problema es específico de macOS, ya que actualmente estos fusibles solo son compatibles con macOS. Específicamente, este problema solo puede explotarse si su aplicación se inicia desde un sistema de archivos en el que el atacante también tiene acceso de escritura, es decir, la capacidad de editar archivos dentro del paquete `.app` en macOS contra el cual se supone que protegen estos fusibles. No existen workarounds en la aplicación; debe actualizar a una versión parcheada de Electron.
CVSS Scores
SSVC
- Decision:-
Timeline
- 2023-09-28 CVE Reserved
- 2023-12-01 CVE Published
- 2023-12-07 EPSS Updated
- 2024-08-02 CVE Updated
- ---------- Exploited in Wild
- ---------- KEV Due Date
- ---------- First Exploit
CWE
- CWE-345: Insufficient Verification of Data Authenticity
CAPEC
References (3)
URL | Tag | Source |
---|---|---|
https://github.com/electron/electron/pull/39788 | Issue Tracking | |
https://www.electronjs.org/docs/latest/tutorial/fuses | Product |
URL | Date | SRC |
---|
URL | Date | SRC |
---|
URL | Date | SRC |
---|---|---|
https://github.com/electron/electron/security/advisories/GHSA-7m48-wc93-9g85 | 2023-12-06 |
Affected Vendors, Products, and Versions
Vendor | Product | Version | Other | Status | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Vendor | Product | Version | Other | Status | <-- --> | Vendor | Product | Version | Other | Status |
Electronjs Search vendor "Electronjs" | Electron Search vendor "Electronjs" for product "Electron" | <= 22.3.24 Search vendor "Electronjs" for product "Electron" and version " <= 22.3.24" | node.js |
Affected
| ||||||
Electronjs Search vendor "Electronjs" | Electron Search vendor "Electronjs" for product "Electron" | >= 23.0.0 <= 23.3.14 Search vendor "Electronjs" for product "Electron" and version " >= 23.0.0 <= 23.3.14" | node.js |
Affected
| ||||||
Electronjs Search vendor "Electronjs" | Electron Search vendor "Electronjs" for product "Electron" | >= 24.0.0 <= 24.8.3 Search vendor "Electronjs" for product "Electron" and version " >= 24.0.0 <= 24.8.3" | node.js |
Affected
| ||||||
Electronjs Search vendor "Electronjs" | Electron Search vendor "Electronjs" for product "Electron" | >= 25.0.0 <= 25.8.1 Search vendor "Electronjs" for product "Electron" and version " >= 25.0.0 <= 25.8.1" | node.js |
Affected
| ||||||
Electronjs Search vendor "Electronjs" | Electron Search vendor "Electronjs" for product "Electron" | >= 26.0.0 <= 26.2.1 Search vendor "Electronjs" for product "Electron" and version " >= 26.0.0 <= 26.2.1" | node.js |
Affected
| ||||||
Electronjs Search vendor "Electronjs" | Electron Search vendor "Electronjs" for product "Electron" | 27.0.0 Search vendor "Electronjs" for product "Electron" and version "27.0.0" | alpha1, node.js |
Affected
| ||||||
Electronjs Search vendor "Electronjs" | Electron Search vendor "Electronjs" for product "Electron" | 27.0.0 Search vendor "Electronjs" for product "Electron" and version "27.0.0" | alpha2, node.js |
Affected
| ||||||
Electronjs Search vendor "Electronjs" | Electron Search vendor "Electronjs" for product "Electron" | 27.0.0 Search vendor "Electronjs" for product "Electron" and version "27.0.0" | alpha3, node.js |
Affected
| ||||||
Electronjs Search vendor "Electronjs" | Electron Search vendor "Electronjs" for product "Electron" | 27.0.0 Search vendor "Electronjs" for product "Electron" and version "27.0.0" | alpha4, node.js |
Affected
| ||||||
Electronjs Search vendor "Electronjs" | Electron Search vendor "Electronjs" for product "Electron" | 27.0.0 Search vendor "Electronjs" for product "Electron" and version "27.0.0" | alpha5, node.js |
Affected
| ||||||
Electronjs Search vendor "Electronjs" | Electron Search vendor "Electronjs" for product "Electron" | 27.0.0 Search vendor "Electronjs" for product "Electron" and version "27.0.0" | alpha6, node.js |
Affected
|