{"api_version":"1","generated_at":"2026-07-23T11:25:23+00:00","cve":"CVE-2020-15258","urls":{"html":"https://cve.report/CVE-2020-15258","api":"https://cve.report/api/cve/CVE-2020-15258.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2020-15258","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2020-15258"},"summary":{"title":"CVE-2020-15258","description":"In Wire before 3.20.x, `shell.openExternal` was used without checking the URL. This vulnerability allows an attacker to execute code on the victims machine by sending messages containing links with arbitrary protocols. The victim has to interact with the link and sees the URL that is opened. The issue was patched by implementing a helper function which checks if the URL's protocol is common. If it is common, the URL will be opened externally. If not, the URL will not be opened and a warning appears for the user informing them that a probably insecure URL was blocked from being executed. The issue is patched in Wire 3.20.x. More technical details about exploitation are available in the linked advisory.","state":"PUBLIC","assigner":"security-advisories@github.com","published_at":"2020-10-16 17:15:00","updated_at":"2020-10-28 16:38:00"},"problem_types":["CWE-20"],"metrics":[],"references":[{"url":"https://benjamin-altpeter.de/shell-openexternal-dangers/","name":"https://benjamin-altpeter.de/shell-openexternal-dangers/","refsource":"MISC","tags":["Exploit","Third Party Advisory"],"title":"The dangers of Electron's shell.openExternal()—many paths to remote code execution","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://github.com/wireapp/wire-desktop/commit/b3705fffa75a03f055530f55a754face5ac0623b","name":"https://github.com/wireapp/wire-desktop/commit/b3705fffa75a03f055530f55a754face5ac0623b","refsource":"MISC","tags":["Patch","Third Party Advisory"],"title":"Merge pull request from GHSA-5gpx-9976-ggpm · wireapp/wire-desktop@b3705ff · GitHub","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://github.com/wireapp/wire-desktop/security/advisories/GHSA-5gpx-9976-ggpm","name":"https://github.com/wireapp/wire-desktop/security/advisories/GHSA-5gpx-9976-ggpm","refsource":"CONFIRM","tags":["Exploit","Third Party Advisory"],"title":"Insecure use of shell.openExternal · Advisory · wireapp/wire-desktop · GitHub","mime":"text/html","httpstatus":"200","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2020-15258","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2020-15258","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[{"cve_year":"2020","cve_id":"15258","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"wire","cpe5":"wire","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2020","cve_id":"15258","vulnerable":"1","versionEndIncluding":"1","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"wire","cpe5":"wire","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"}],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"CVE_data_meta":{"ASSIGNER":"security-advisories@github.com","ID":"CVE-2020-15258","STATE":"PUBLIC","TITLE":"Insecure use of shell.openExternal in Wire"},"affects":{"vendor":{"vendor_data":[{"product":{"product_data":[{"product_name":"wire-desktop","version":{"version_data":[{"version_value":"< 3.20.x"}]}}]},"vendor_name":"wireapp"}]}},"data_format":"MITRE","data_type":"CVE","data_version":"4.0","description":{"description_data":[{"lang":"eng","value":"In Wire before 3.20.x, `shell.openExternal` was used without checking the URL. This vulnerability allows an attacker to execute code on the victims machine by sending messages containing links with arbitrary protocols. The victim has to interact with the link and sees the URL that is opened. The issue was patched by implementing a helper function which checks if the URL's protocol is common. If it is common, the URL will be opened externally. If not, the URL will not be opened and a warning appears for the user informing them that a probably insecure URL was blocked from being executed. The issue is patched in Wire 3.20.x. More technical details about exploitation are available in the linked advisory."}]},"impact":{"cvss":{"attackComplexity":"HIGH","attackVector":"NETWORK","availabilityImpact":"HIGH","baseScore":8,"baseSeverity":"HIGH","confidentialityImpact":"HIGH","integrityImpact":"HIGH","privilegesRequired":"LOW","scope":"CHANGED","userInteraction":"REQUIRED","vectorString":"CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:H","version":"3.1"}},"problemtype":{"problemtype_data":[{"description":[{"lang":"eng","value":"{\"CWE-20\":\"Improper Input Validation\"}"}]}]},"references":{"reference_data":[{"name":"https://github.com/wireapp/wire-desktop/security/advisories/GHSA-5gpx-9976-ggpm","refsource":"CONFIRM","url":"https://github.com/wireapp/wire-desktop/security/advisories/GHSA-5gpx-9976-ggpm"},{"name":"https://github.com/wireapp/wire-desktop/commit/b3705fffa75a03f055530f55a754face5ac0623b","refsource":"MISC","url":"https://github.com/wireapp/wire-desktop/commit/b3705fffa75a03f055530f55a754face5ac0623b"},{"name":"https://benjamin-altpeter.de/shell-openexternal-dangers/","refsource":"MISC","url":"https://benjamin-altpeter.de/shell-openexternal-dangers/"}]},"source":{"advisory":"GHSA-5gpx-9976-ggpm","discovery":"UNKNOWN"}},"nvd":{"publishedDate":"2020-10-16 17:15:00","lastModifiedDate":"2020-10-28 16:38:00","problem_types":["CWE-20"],"metrics":{"baseMetricV3":{"cvssV3":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"REQUIRED","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH","baseScore":8,"baseSeverity":"HIGH"},"exploitabilityScore":2.1,"impactScore":5.9},"baseMetricV2":{"cvssV2":{"version":"2.0","vectorString":"AV:N/AC:M/Au:S/C:P/I:P/A:P","accessVector":"NETWORK","accessComplexity":"MEDIUM","authentication":"SINGLE","confidentialityImpact":"PARTIAL","integrityImpact":"PARTIAL","availabilityImpact":"PARTIAL","baseScore":6},"severity":"MEDIUM","exploitabilityScore":6.8,"impactScore":6.4,"acInsufInfo":false,"obtainAllPrivilege":false,"obtainUserPrivilege":false,"obtainOtherPrivilege":false,"userInteractionRequired":true}},"configurations":{"CVE_data_version":"4.0","nodes":[{"operator":"OR","children":[],"cpe_match":[{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:wire:wire:*:*:*:*:*:*:*:*","versionEndExcluding":"3.20.2934","cpe_name":[]}]}]}},"legacy_mitre":{"record":{"CveYear":"2020","CveId":"15258","Ordinal":"176637","Title":"CVE-2020-15258","CVE":"CVE-2020-15258","Year":"2020"},"notes":[{"CveYear":"2020","CveId":"15258","Ordinal":"1","NoteData":"In Wire before 3.20.x, `shell.openExternal` was used without checking the URL. This vulnerability allows an attacker to execute code on the victims machine by sending messages containing links with arbitrary protocols. The victim has to interact with the link and sees the URL that is opened. The issue was patched by implementing a helper function which checks if the URL's protocol is common. If it is common, the URL will be opened externally. If not, the URL will not be opened and a warning appears for the user informing them that a probably insecure URL was blocked from being executed. The issue is patched in Wire 3.20.x. More technical details about exploitation are available in the linked advisory.","Type":"Description","Title":null},{"CveYear":"2020","CveId":"15258","Ordinal":"2","NoteData":"2020-10-16","Type":"Other","Title":"Published"},{"CveYear":"2020","CveId":"15258","Ordinal":"3","NoteData":"2020-10-16","Type":"Other","Title":"Modified"}]}}}