CVE-2020-13092: scikit-learn Deserialization of Untrusted Data
(updated )
scikit-learn (aka sklearn) through 0.23.0 can unserialize and execute commands from an untrusted file that is passed to the joblib.load()
function, if __reduce__
makes an os.system call
.
NOTE: third parties dispute this issue because the joblib.load() function is documented as unsafe and it is the user’s responsibility to use the function in a secure manner.
References
- github.com/0FuzzingQ/vuln/blob/master/sklearn%20unserialize.md
- github.com/advisories/GHSA-jjw5-xxj6-pcv5
- github.com/pypa/advisory-database/tree/main/vulns/scikit-learn/PYSEC-2020-107.yaml
- github.com/scikit-learn/scikit-learn
- nvd.nist.gov/vuln/detail/CVE-2020-13092
- scikit-learn.org/stable/modules/model_persistence.html
Detect and mitigate CVE-2020-13092 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →