Plattform
nodejs
Komponente
electron
Behoben in
38.8.7
39.0.1
40.0.1
41.0.1
38.8.6
CVE-2026-34778 describes an IPC spoofing vulnerability in Electron. A service worker can spoof reply messages on the internal IPC channel, potentially causing the main process promise to resolve with attacker-controlled data. This impacts applications that rely on the result of webContents.executeJavaScript() for security decisions. The vulnerability affects Electron versions ≤38.8.6. Currently, there is no official patch available.
CVE-2026-34778 in Electron ermöglicht einem Service Worker, der in einer Sitzung ausgeführt wird, das Fälschen von Antwortnachrichten auf dem internen IPC-Kanal, der von webContents.executeJavaScript() und verwandten Methoden verwendet wird. Dies kann dazu führen, dass das Promise des Hauptprozesses mit Daten aufgelöst wird, die von einem Angreifer kontrolliert werden. Anwendungen sind nur betroffen, wenn sie Service Worker registriert haben und das Ergebnis von webContents.executeJavaScript() (oder webFrameMain.executeJavaScript()) in sicherheitsrelevanten Entscheidungen verwenden. Der Schwachpunkt liegt in der Möglichkeit eines Angreifers, Daten zu manipulieren, die in kritischer Anwendungslogik verwendet werden, was zu unbefugten Aktionen oder Datenverstößen führen kann.
Ein Angreifer benötigt die Fähigkeit, JavaScript-Code im Render-Kontext auszuführen, was typischerweise durch eine bösartige Website oder Code-Injection erreicht wird. Sobald der Service Worker kompromittiert ist, kann er die Antworten von webContents.executeJavaScript() abfangen und ändern. Der Erfolg der Ausnutzung hängt von der Abhängigkeit der Anwendung vom Ergebnis von executeJavaScript() für sicherheitsrelevante Entscheidungen ab. Die Komplexität der Ausnutzung variiert je nach Architektur der Anwendung und den vorhandenen Sicherheitsmaßnahmen.
Applications built with Electron that register service workers and utilize webContents.executeJavaScript() for security-sensitive operations are at risk. This includes desktop applications, web applications packaged as desktop apps, and any Electron-based tools that rely on the return values of webContents.executeJavaScript() for authentication, authorization, or data validation.
• nodejs / supply-chain: Monitor Electron application processes for unusual IPC activity. Use ps aux | grep electron to identify running Electron processes. Inspect the arguments passed to webContents.executeJavaScript() for suspicious patterns.
• generic web: Examine application logs for errors related to IPC communication or unexpected data received from the renderer process. Look for unusual patterns in network traffic associated with the Electron application.
disclosure
Exploit-Status
EPSS
0.01% (3% Perzentil)
CISA SSVC
CVSS-Vektor
Die empfohlene Lösung ist, Electron auf Version 38.8.6 oder höher zu aktualisieren. Als vorübergehende Maßnahme sollten Sie dem Rückgabewert von webContents.executeJavaScript() für sicherheitsrelevante Entscheidungen nicht vertrauen. Erwägen Sie, im Hauptprozess zusätzliche Validierungen zu implementieren, um die Integrität der empfangenen Daten zu überprüfen. Überprüfen Sie regelmäßig den Code Ihrer Anwendung auf Instanzen von webContents.executeJavaScript(), die anfällig sein könnten. Das Upgrade auf die gepatchte Version ist die effektivste Abmilderung, da sie die Ursache der Schwachstelle beseitigt.
Actualice Electron a la versión 38.8.6, 39.8.1, 40.8.1 o 41.0.0 o superior. Asegúrese de que las aplicaciones no tomen decisiones de seguridad basadas en los resultados de `webContents.executeJavaScript()` o `webFrameMain.executeJavaScript()` cuando se utilizan service workers.
Schwachstellenanalysen und kritische Warnungen direkt in deinen Posteingang.
Ein Service Worker ist ein Skript, das im Hintergrund ausgeführt wird, getrennt von der Webseite, und Anfragen an das Netzwerk abfangen und manipulieren kann.
Wenn Ihre Electron-Anwendung Service Worker verwendet und dem Ergebnis von webContents.executeJavaScript() für die Sicherheit vertraut, ist sie anfällig.
Als vorübergehende Maßnahme sollten Sie dem Rückgabewert von webContents.executeJavaScript() nicht vertrauen und die empfangenen Daten validieren.
Derzeit gibt es keine speziellen Tools, um diese Schwachstelle zu erkennen, aber eine manuelle Code-Überprüfung wird empfohlen.
IPC steht für Inter-Process Communication, oder Interprozesskommunikation. Es ist der Mechanismus, der es verschiedenen Prozessen in einem System ermöglicht, miteinander zu kommunizieren.
Lade deine Abhängigkeitsdatei hoch und erfahre sofort, ob dich diese und andere CVEs treffen.