Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to versions 38.8.6, 39.8.0, 40.7.0, and 41.0.0-beta.8, the select-usb-device event callback did not validate the chosen device ID against the filtered list that was presented to the handler. An app whose handler could be influenced to select a device ID outside the filtered set would grant access to a device that did not match the renderers requested filters or was listed in exclusionFilters. The WebUSB security blocklist remained enforced regardless, so security-sensitive devices on the blocklist were not affected. The practical impact is limited to apps with unusual device-selection logic. This issue has been patched in versions 38.8.6, 39.8.0, 40.7.0, and 41.0.0-beta.8.
The product does not perform an authorization check when an actor attempts to access a resource or perform an action.
| Name | Vendor | Start Version | End Version |
|---|---|---|---|
| Electron | Electronjs | * | 38.8.6 (excluding) |
| Electron | Electronjs | 39.0.0 (including) | 39.8.0 (excluding) |
| Electron | Electronjs | 40.0.0 (including) | 40.7.0 (excluding) |
| Electron | Electronjs | 41.0.0-alpha1 (including) | 41.0.0-alpha1 (including) |
| Electron | Electronjs | 41.0.0-alpha2 (including) | 41.0.0-alpha2 (including) |
| Electron | Electronjs | 41.0.0-alpha3 (including) | 41.0.0-alpha3 (including) |
| Electron | Electronjs | 41.0.0-alpha4 (including) | 41.0.0-alpha4 (including) |
| Electron | Electronjs | 41.0.0-alpha5 (including) | 41.0.0-alpha5 (including) |
| Electron | Electronjs | 41.0.0-alpha6 (including) | 41.0.0-alpha6 (including) |
| Electron | Electronjs | 41.0.0-beta1 (including) | 41.0.0-beta1 (including) |
| Electron | Electronjs | 41.0.0-beta2 (including) | 41.0.0-beta2 (including) |
| Electron | Electronjs | 41.0.0-beta3 (including) | 41.0.0-beta3 (including) |
| Electron | Electronjs | 41.0.0-beta4 (including) | 41.0.0-beta4 (including) |
| Electron | Electronjs | 41.0.0-beta5 (including) | 41.0.0-beta5 (including) |
| Electron | Electronjs | 41.0.0-beta6 (including) | 41.0.0-beta6 (including) |
| Electron | Electronjs | 41.0.0-beta7 (including) | 41.0.0-beta7 (including) |