CVE-2022-29247
Vulnerability from cvelistv5
Published
2022-06-13 21:05
Modified
2024-08-03 06:17
Severity ?
EPSS score ?
Summary
Exposure of Resource to Wrong Sphere in Electron
References
Impacted products
{ "containers": { "adp": [ { "providerMetadata": { "dateUpdated": "2024-08-03T06:17:54.477Z", "orgId": "af854a3a-2127-422b-91ae-364da2661108", "shortName": "CVE" }, "references": [ { "tags": [ "x_refsource_CONFIRM", "x_transferred" ], "url": "https://github.com/electron/electron/security/advisories/GHSA-mq8j-3h7h-p8g7" } ], "title": "CVE Program Container" } ], "cna": { "affected": [ { "product": "electron", "vendor": "electron", "versions": [ { "status": "affected", "version": "\u003c 15.5.5" }, { "status": "affected", "version": "\u003e= 16.0.0-beta.1, \u003c 16.2.6" }, { "status": "affected", "version": "\u003e= 17.0.0-beta.1, \u003c 17.2.0" }, { "status": "affected", "version": "\u003e= 18.0.0-beta.1, \u003c= 18.0.0-beta.5" } ] } ], "descriptions": [ { "lang": "en", "value": "Electron is a framework for writing cross-platform desktop applications using JavaScript (JS), HTML, and CSS. A vulnerability in versions prior to 18.0.0-beta.6, 17.2.0, 16.2.6, and 15.5.5 allows a renderer with JS execution to obtain access to a new renderer process with `nodeIntegrationInSubFrames` enabled which in turn allows effective access to `ipcRenderer`. The `nodeIntegrationInSubFrames` option does not implicitly grant Node.js access. Rather, it depends on the existing sandbox setting. If an application is sandboxed, then `nodeIntegrationInSubFrames` just gives access to the sandboxed renderer APIs, which include `ipcRenderer`. If the application then additionally exposes IPC messages without IPC `senderFrame` validation that perform privileged actions or return confidential data this access to `ipcRenderer` can in turn compromise your application / user even with the sandbox enabled. Electron versions 18.0.0-beta.6, 17.2.0, 16.2.6, and 15.5.5 contain a fix for this issue. As a workaround, ensure that all IPC message handlers appropriately validate `senderFrame`." } ], "metrics": [ { "cvssV3_1": { "attackComplexity": "HIGH", "attackVector": "NETWORK", "availabilityImpact": "NONE", "baseScore": 2.2, "baseSeverity": "LOW", "confidentialityImpact": "LOW", "integrityImpact": "NONE", "privilegesRequired": "HIGH", "scope": "UNCHANGED", "userInteraction": "NONE", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:N", "version": "3.1" } } ], "problemTypes": [ { "descriptions": [ { "cweId": "CWE-668", "description": "CWE-668: Exposure of Resource to Wrong Sphere", "lang": "en", "type": "CWE" } ] } ], "providerMetadata": { "dateUpdated": "2022-06-13T21:05:10", "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "shortName": "GitHub_M" }, "references": [ { "tags": [ "x_refsource_CONFIRM" ], "url": "https://github.com/electron/electron/security/advisories/GHSA-mq8j-3h7h-p8g7" } ], "source": { "advisory": "GHSA-mq8j-3h7h-p8g7", "discovery": "UNKNOWN" }, "title": "Exposure of Resource to Wrong Sphere in Electron", "x_legacyV4Record": { "CVE_data_meta": { "ASSIGNER": "security-advisories@github.com", "ID": "CVE-2022-29247", "STATE": "PUBLIC", "TITLE": "Exposure of Resource to Wrong Sphere in Electron" }, "affects": { "vendor": { "vendor_data": [ { "product": { "product_data": [ { "product_name": "electron", "version": { "version_data": [ { "version_value": "\u003c 15.5.5" }, { "version_value": "\u003e= 16.0.0-beta.1, \u003c 16.2.6" }, { "version_value": "\u003e= 17.0.0-beta.1, \u003c 17.2.0" }, { "version_value": "\u003e= 18.0.0-beta.1, \u003c= 18.0.0-beta.5" } ] } } ] }, "vendor_name": "electron" } ] } }, "data_format": "MITRE", "data_type": "CVE", "data_version": "4.0", "description": { "description_data": [ { "lang": "eng", "value": "Electron is a framework for writing cross-platform desktop applications using JavaScript (JS), HTML, and CSS. A vulnerability in versions prior to 18.0.0-beta.6, 17.2.0, 16.2.6, and 15.5.5 allows a renderer with JS execution to obtain access to a new renderer process with `nodeIntegrationInSubFrames` enabled which in turn allows effective access to `ipcRenderer`. The `nodeIntegrationInSubFrames` option does not implicitly grant Node.js access. Rather, it depends on the existing sandbox setting. If an application is sandboxed, then `nodeIntegrationInSubFrames` just gives access to the sandboxed renderer APIs, which include `ipcRenderer`. If the application then additionally exposes IPC messages without IPC `senderFrame` validation that perform privileged actions or return confidential data this access to `ipcRenderer` can in turn compromise your application / user even with the sandbox enabled. Electron versions 18.0.0-beta.6, 17.2.0, 16.2.6, and 15.5.5 contain a fix for this issue. As a workaround, ensure that all IPC message handlers appropriately validate `senderFrame`." } ] }, "impact": { "cvss": { "attackComplexity": "HIGH", "attackVector": "NETWORK", "availabilityImpact": "NONE", "baseScore": 2.2, "baseSeverity": "LOW", "confidentialityImpact": "LOW", "integrityImpact": "NONE", "privilegesRequired": "HIGH", "scope": "UNCHANGED", "userInteraction": "NONE", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:N", "version": "3.1" } }, "problemtype": { "problemtype_data": [ { "description": [ { "lang": "eng", "value": "CWE-668: Exposure of Resource to Wrong Sphere" } ] } ] }, "references": { "reference_data": [ { "name": "https://github.com/electron/electron/security/advisories/GHSA-mq8j-3h7h-p8g7", "refsource": "CONFIRM", "url": "https://github.com/electron/electron/security/advisories/GHSA-mq8j-3h7h-p8g7" } ] }, "source": { "advisory": "GHSA-mq8j-3h7h-p8g7", "discovery": "UNKNOWN" } } } }, "cveMetadata": { "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "assignerShortName": "GitHub_M", "cveId": "CVE-2022-29247", "datePublished": "2022-06-13T21:05:10", "dateReserved": "2022-04-13T00:00:00", "dateUpdated": "2024-08-03T06:17:54.477Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1", "meta": { "nvd": "{\"cve\":{\"id\":\"CVE-2022-29247\",\"sourceIdentifier\":\"security-advisories@github.com\",\"published\":\"2022-06-13T21:15:07.763\",\"lastModified\":\"2024-11-21T06:58:48.040\",\"vulnStatus\":\"Modified\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"Electron is a framework for writing cross-platform desktop applications using JavaScript (JS), HTML, and CSS. A vulnerability in versions prior to 18.0.0-beta.6, 17.2.0, 16.2.6, and 15.5.5 allows a renderer with JS execution to obtain access to a new renderer process with `nodeIntegrationInSubFrames` enabled which in turn allows effective access to `ipcRenderer`. The `nodeIntegrationInSubFrames` option does not implicitly grant Node.js access. Rather, it depends on the existing sandbox setting. If an application is sandboxed, then `nodeIntegrationInSubFrames` just gives access to the sandboxed renderer APIs, which include `ipcRenderer`. If the application then additionally exposes IPC messages without IPC `senderFrame` validation that perform privileged actions or return confidential data this access to `ipcRenderer` can in turn compromise your application / user even with the sandbox enabled. Electron versions 18.0.0-beta.6, 17.2.0, 16.2.6, and 15.5.5 contain a fix for this issue. As a workaround, ensure that all IPC message handlers appropriately validate `senderFrame`.\"},{\"lang\":\"es\",\"value\":\"Electron es un marco de trabajo para escribir aplicaciones de escritorio multiplataforma utilizando JavaScript (JS), HTML y CSS. Una vulnerabilidad en las versiones anteriores a 18.0.0-beta.6, 17.2.0, 16.2.6 y 15.5.5 permite que un renderizador con ejecuci\u00f3n de JS obtenga acceso a un nuevo proceso de renderizaci\u00f3n con \\\"nodeIntegrationInSubFrames\\\" habilitado, lo que a su vez permite el acceso efectivo a \\\"ipcRenderer\\\". La opci\u00f3n \\\"nodeIntegrationInSubFrames\\\" no concede impl\u00edcitamente el acceso a Node.js. M\u00e1s bien, depende de la configuraci\u00f3n del sandbox existente. Si una aplicaci\u00f3n est\u00e1 en sandbox, entonces \\\"nodeIntegrationInSubFrames\\\" s\u00f3lo da acceso a las APIs del renderizador en sandbox, que incluyen \\\"ipcRenderer\\\". Si la aplicaci\u00f3n expone adicionalmente mensajes IPC sin la comprobaci\u00f3n de IPC \\\"senderFrame\\\" que llevan a cabo acciones privilegiadas o devuelven datos confidenciales este acceso a \\\"ipcRenderer\\\" puede a su vez comprometer su aplicaci\u00f3n / usuario incluso con el sandbox habilitado. Electron versiones 18.0.0-beta.6, 17.2.0, 16.2.6 y 15.5.5 contienen una correcci\u00f3n para este problema. Como soluci\u00f3n, aseg\u00farese de que todos los manejadores de mensajes IPC comprueban apropiadamente \\\"senderFrame\\\"\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:N\",\"baseScore\":2.2,\"baseSeverity\":\"LOW\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"HIGH\",\"privilegesRequired\":\"HIGH\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"LOW\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"NONE\"},\"exploitabilityScore\":0.7,\"impactScore\":1.4},{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H\",\"baseScore\":9.8,\"baseSeverity\":\"CRITICAL\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":3.9,\"impactScore\":5.9}],\"cvssMetricV2\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"2.0\",\"vectorString\":\"AV:N/AC:M/Au:N/C:P/I:P/A:P\",\"baseScore\":6.8,\"accessVector\":\"NETWORK\",\"accessComplexity\":\"MEDIUM\",\"authentication\":\"NONE\",\"confidentialityImpact\":\"PARTIAL\",\"integrityImpact\":\"PARTIAL\",\"availabilityImpact\":\"PARTIAL\"},\"baseSeverity\":\"MEDIUM\",\"exploitabilityScore\":8.6,\"impactScore\":6.4,\"acInsufInfo\":false,\"obtainAllPrivilege\":false,\"obtainUserPrivilege\":false,\"obtainOtherPrivilege\":false,\"userInteractionRequired\":false}]},\"weaknesses\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-668\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:*:*:*:*:*:*:*:*\",\"versionEndExcluding\":\"15.5.5\",\"matchCriteriaId\":\"62A3846F-57BE-4ABE-A656-CA28FD62BA62\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"16.0.1\",\"versionEndExcluding\":\"16.2.6\",\"matchCriteriaId\":\"AA3F2F40-BD84-4541-B5B3-5DC5DC3AEC24\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"17.0.1\",\"versionEndExcluding\":\"17.2.0\",\"matchCriteriaId\":\"2B4978EA-362E-46C8-A56B-4F4B47237C05\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:16.0.0:beta1:*:*:*:*:*:*\",\"matchCriteriaId\":\"DCBD6783-12BE-4D63-B403-188943FB4F02\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:16.0.0:beta2:*:*:*:*:*:*\",\"matchCriteriaId\":\"989D1505-66D5-4855-A8FA-58F9566FF7FB\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:16.0.0:beta3:*:*:*:*:*:*\",\"matchCriteriaId\":\"E6C15DE2-CA55-4A42-8D64-C44068B24B93\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:16.0.0:beta4:*:*:*:*:*:*\",\"matchCriteriaId\":\"2A4E764B-39E3-4C93-8F7F-1ACFA66FA51B\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:16.0.0:beta5:*:*:*:*:*:*\",\"matchCriteriaId\":\"B67FFDE1-21D0-412E-95FB-D86A350EC9A2\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:16.0.0:beta6:*:*:*:*:*:*\",\"matchCriteriaId\":\"04F71865-1B3E-4882-B316-87AEAEB84A9F\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:16.0.0:beta7:*:*:*:*:*:*\",\"matchCriteriaId\":\"CF914799-7DA1-4B93-9445-1DFCD72D6A6B\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:16.0.0:beta8:*:*:*:*:*:*\",\"matchCriteriaId\":\"3DE7DE50-D9B1-48D9-A8F8-2DF34B80BC6C\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:16.0.0:beta9:*:*:*:*:*:*\",\"matchCriteriaId\":\"2E8C22CB-3247-47F9-8E54-F694437090ED\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:17.0.0:beta1:*:*:*:*:*:*\",\"matchCriteriaId\":\"2C8C94BE-5D08-4563-AF15-5FC06BB679AB\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:17.0.0:beta2:*:*:*:*:*:*\",\"matchCriteriaId\":\"987FAB5C-E1EC-4831-9AA0-FAD35A376584\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:17.0.0:beta3:*:*:*:*:*:*\",\"matchCriteriaId\":\"FAF77E7D-D445-480D-BEBF-A071B58475C0\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:17.0.0:beta4:*:*:*:*:*:*\",\"matchCriteriaId\":\"570418D1-09E9-4A39-8F19-D4ABC1788983\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:17.0.0:beta5:*:*:*:*:*:*\",\"matchCriteriaId\":\"4D0F4031-84D6-4E8D-AED5-D8C1E5ED3CCD\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:17.0.0:beta6:*:*:*:*:*:*\",\"matchCriteriaId\":\"F2B316FE-6214-46FA-88FF-F684DD3D53C0\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:17.0.0:beta7:*:*:*:*:*:*\",\"matchCriteriaId\":\"D8FA77A9-A4AF-404A-B144-97A3CE679444\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:17.0.0:beta8:*:*:*:*:*:*\",\"matchCriteriaId\":\"6A9DB6A0-6C09-44F9-A76B-7600E9B44CDB\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:17.0.0:beta9:*:*:*:*:*:*\",\"matchCriteriaId\":\"470F4DB3-4AB0-402F-A18C-22A430993F3A\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:18.0.0:beta1:*:*:*:*:*:*\",\"matchCriteriaId\":\"11BEDA0E-71FE-4D37-B06F-FA4B281CD970\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:18.0.0:beta2:*:*:*:*:*:*\",\"matchCriteriaId\":\"05B3D931-5802-471E-AE40-9282CC03E4A4\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:18.0.0:beta3:*:*:*:*:*:*\",\"matchCriteriaId\":\"56721A2E-45B2-4D19-B25D-DD8628185B97\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:18.0.0:beta4:*:*:*:*:*:*\",\"matchCriteriaId\":\"577CBB14-4AEF-4CF2-B203-88055A68810D\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:electronjs:electron:18.0.0:beta5:*:*:*:*:*:*\",\"matchCriteriaId\":\"16A23DCC-2355-4431-A452-40BC95D3164E\"}]}]}],\"references\":[{\"url\":\"https://github.com/electron/electron/security/advisories/GHSA-mq8j-3h7h-p8g7\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Third Party Advisory\"]},{\"url\":\"https://github.com/electron/electron/security/advisories/GHSA-mq8j-3h7h-p8g7\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Third Party Advisory\"]}]}}" } }
Loading…
Loading…
Sightings
Author | Source | Type | Date |
---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.