Platform
nodejs
Component
electron
Opgelost in
38.8.7
39.0.1
40.0.1
41.0.1
38.8.6
CVE-2026-34773 is een protocol handler hijacking kwetsbaarheid in Electron op Windows. De functie app.setAsDefaultProtocolClient(protocol) valideert de protocolnaam niet, waardoor een aanvaller willekeurige subkeys kan beschrijven onder HKCU\Software\Classes\. Dit kan leiden tot het kapen van bestaande protocol handlers. De kwetsbaarheid treft apps die app.setAsDefaultProtocolClient() aanroepen met een protocolnaam afgeleid van externe input. De kwetsbaarheid is verholpen in Electron versie 38.8.6.
CVE-2026-34773 in Electron beïnvloedt applicaties die app.setAsDefaultProtocolClient(protocol) op Windows gebruiken. Het probleem ligt in het ontbreken van een correcte validatie van de protocolnaam voordat er naar de Windows-register wordt geschreven. Dit stelt een aanvaller in staat, als de applicatie protocolnamen accepteert van niet-vertrouwde bronnen, om naar willekeurige subkeys onder HKCU\Software\Classes\ te schrijven. Deze schrijfbewerking kan potentieel het overnemen van bestaande protocolhandlers mogelijk maken, wat kan leiden tot de uitvoering van kwaadaardige code of het doorsturen van de gebruiker naar ongewenste websites bij het proberen een link met een specifiek protocol te openen. De kwetsbaarheid is alleen relevant als de protocolnaam afkomstig is van externe of niet-vertrouwde invoer.
Een aanvaller kan deze kwetsbaarheid uitbuiten door een kwaadaardige link te creëren die een speciaal ontworpen protocolnaam gebruikt. Als een kwetsbare applicatie probeert dit protocol te registreren als de standaardclient, kan de aanvaller naar de Windows-register schrijven en potentieel de systeemconfiguratie compromitteren. Het succes van de exploitatie hangt af van het vermogen van de aanvaller om de applicatie te misleiden om een niet-gavalideerde protocolnaam te gebruiken. De complexiteit van de exploitatie kan variëren afhankelijk van de architectuur van de applicatie en de bestaande beveiligingsmaatregelen.
Exploit Status
EPSS
0.03% (9% percentiel)
CISA SSVC
CVSS-vector
De oplossing om CVE-2026-34773 te mitigeren is het updaten naar Electron versie 38.8.6 of hoger. Deze versie bevat een correcte validatie van de protocolnaam voordat er naar de register wordt geschreven. Als een onmiddellijke update niet mogelijk is, wordt aanbevolen om de door de gebruiker verstrekte protocolnaam grondig te valideren voordat deze aan app.setAsDefaultProtocolClient() wordt doorgegeven. Robuuste validatie moet een whitelist van toegestane protocollen bevatten en alle invoer afwijzen die niet overeenkomt met deze lijst. Controleer bovendien de code van uw applicatie op alle gevallen van het gebruik van app.setAsDefaultProtocolClient() met extern afkomstige gegevens en pas de nodige validaties toe.
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 el nombre del protocolo utilizado en `app.setAsDefaultProtocolClient()` se derive de una fuente segura y no de entrada proporcionada por el usuario para evitar la inyección de claves de registro.
Kwetsbaarheidsanalyses en kritieke waarschuwingen direct in uw inbox.
Electron is een framework voor het bouwen van cross-platform desktopapplicaties met behulp van webtechnologieën zoals HTML, CSS en JavaScript.
Controleer de versie van Electron die uw applicatie gebruikt. Als deze onder 38.8.6 ligt, is deze kwetsbaar. Controleer ook de code op het gebruik van app.setAsDefaultProtocolClient() met externe gegevens.
Dit is een Windows-register sleutel die informatie opslaat over protocollen en hun bijbehorende handlers. Manipulatie van deze sleutel kan het systeemgedrag beïnvloeden.
Afhankelijk van de gewenste functionaliteit, kunnen er alternatieven zijn. Overweeg de veiligheidsimplicaties van elke alternatieve aanpak zorgvuldig.
Implementeer een grondige validatie van de protocolnaam voordat deze aan app.setAsDefaultProtocolClient() wordt doorgegeven. Gebruik een whitelist van toegestane protocollen.
Upload je dependency-bestand en kom direct te weten of deze en andere CVEs jou raken.