Track vulnerabilities like this one.
Sign up free to get alerted when software you use is affected.
7.5
CVE-2020-28975: Libsvm in scikit-learn and other products can crash with a specially crafted model
CVE-2020-28975 · published 5 years ago
Summary
A bug in the svm_predict_values function in the Libsvm library, used in scikit-learn and other products, can cause a program to crash if it is given a specially created model. This could potentially happen if a user or another application manipulates the model in a way that the library is not designed to handle. To avoid this issue, users should ensure that they are not modifying the model in an unintended way.
What to do
- Update scikit-learn developers scikit-learn to version 1.0.1.
- Update scikit-learn scikit-learn to version 1.0.1 or later.
Affected software
| Ecosystem | Vendor | Product | Affected versions |
|---|---|---|---|
| pip | scikit-learn developers | scikit-learn |
>= 0.23.2, < 1.0.1 Fix: upgrade to 1.0.1
|
| – | scikit-learn | scikit-learn |
>= 0.23.2, < 1.0.1 cpe:2.3:a:scikit-learn:scikit-learn:*:*:*:*:*:*:*:* |
Original advisory text
svm_predict_values in svm.cpp in Libsvm v324, as used in scikit-learn 0.23.2 and other products, allows attackers to cause a denial of service (segmentation fault) via a crafted model SVM (introduc...
svm_predict_values in svm.cpp in Libsvm v324, as used in scikit-learn 0.23.2 and other products, allows attackers to cause a denial of service (segmentation fault) via a crafted model SVM (introduced via pickle, json, or any other model permanence standard) with a large value in the _n_support array. NOTE: the scikit-learn vendor's position is that the behavior can only occur if the library's API is violated by an application that changes a private attribute.
References
- https://nvd.nist.gov/vuln/detail/CVE-2020-28975
- https://github.com/scikit-learn/scikit-learn/issues/18891
- https://github.com/cjlin1/libsvm/blob/9a3a9708926dec87d382c43b203f2ca19c2d56a0/s...
- http://packetstormsecurity.com/files/160281/SciKit-Learn-0.23.2-Denial-Of-Servic...
- http://seclists.org/fulldisclosure/2020/Nov/44
- https://github.com/scikit-learn/scikit-learn/commit/1bf13d567d3cd74854aa8343fd25...
- https://security.gentoo.org/glsa/202301-03
- https://github.com/pypa/advisory-database/tree/main/vulns/scikit-learn/PYSEC-202...
- https://github.com/advisories/GHSA-jxfp-4rvq-9h9m
Internet-facing
60 days
Internal
At next upgrade
- Not known to be exploited
- Needs hands-on effort to exploit
- Gives an attacker partial control
Timeline
Published21 Nov 2020
Updated4 Nov 2026
First seen6 Mar 2026
Track software like this
Free during beta