Vulnerability · Published Oct 1, 2021 · Assigned by GitHub_M
CVE-2021-41110CWL Viewer: deserialization of untrusted data can lead to complete takeover by an attacker
Critical 9.1
In plain English
A critical-severity unsafe deserialization in cwlviewer from common-workflow-language. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 2.8% (higher than 87% of all known vulnerabilities).
Official description
cwlviewer is a web application to view and share Common Workflow Language workflows. Versions prior to 1.3.1 contain a Deserialization of Untrusted Data vulnerability. Commit number f6066f09edb70033a2ce80200e9fa9e70a5c29de (dated 2021-09-30) contains a patch. There are no available workarounds aside from installing the patch. The SnakeYaml constructor, by default, allows any data to be parsed. To fix the issue the object needs to be created with a `SafeConstructor` object, as seen in the patch.
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| common-workflow-language | cwlviewer | < 1.3.1 |
Weakness: CWE-502 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H
References
- https://github.com/common-workflow-language/cwlviewer/security/advisories/GHSA-7g7j-f5g3-fqp7 x_refsource_CONFIRM
- https://github.com/common-workflow-language/cwlviewer/commit/f6066f09edb70033a2ce80200e9fa9e70a5c29de x_refsource_MISC
- https://www.fatalerrors.org/a/analysis-of-the-snakeyaml-deserialization-in-java-security.html x_refsource_MISC