scikit-learn
PyPIscikit-learnscikit-learn is the standard machine learning library for Python, providing implementations of classification, regression, clustering, and preprocessing algorithms. It is used in production ML pipelines from data preprocessing through model evaluation and serialization. Model persistence with `joblib` or `pickle` is a common pattern that scikit-learn relies on.
Checking scikit-learn
scikit-learn 1.5.0 is a clean, monitored version with no known supply chain compromise. The example response returns supply_chain_monitored: true and compromised: false with an empty sources array.
curl "https://api.attestd.io/v1/check?product=scikit-learn&version=1.5.0" \
-H "Authorization: Bearer YOUR_API_KEY"{
"product": "scikit-learn",
"version": "1.5.0",
"supported": true,
"risk_state": "none",
"risk_factors": [],
"actively_exploited": false,
"remote_exploitable": false,
"authentication_required": false,
"patch_available": false,
"fixed_version": null,
"confidence": 0.9,
"cve_ids": [],
"cves": null,
"max_epss": null,
"typosquat": null,
"supply_chain_monitored": true,
"supply_chain": {
"compromised": false,
"sources": [],
"malware_type": null,
"description": null,
"advisory_url": null,
"compromised_at": null,
"removed_at": null
},
"last_updated": "2026-05-01T00:00:00Z"
}Why this package is monitored
scikit-learn commonly persists models with joblib / pickle, which execute Python on load. A hostile release can plant deserialization payloads in saved estimators or siphon features and labels during fit.
Attestd monitors scikit-learn using the following detection sources:
registryManually curated advisories in the Attestd registry, verified by a human analyst. Confidence 1.0.
osvOSV.dev malicious-package advisories with IDs prefixed MAL-. Confidence 0.95.
pypi_yankVersions yanked on PyPI with a security-related yanked_reason annotation. Confidence 0.80.