Security Deep Dive
OctoPrint
Security posture and CVE patch evidence from tracked releases.
2 critical dependency CVEs affects 1.11.7.
Audit transitive dependencies; consider upgrading or pinning replacements.
Trust Signals — 3 of 9 Present
Evidence already collected from releases and repository metadata.
Security Score
A composite score aggregating Scorecard performance, CVE patch history, OpenSSF badge tier, and dependency vulnerability exposure. Score ≥ 7.0 is healthy; < 4.0 warrants attention.
epss
0.25 / 0.5
No EPSS data
freshness
1.00 / 1.0
5d stale
scorecard
2.00 / 4.0
Score 5.0/10
cve health
0.00 / 2.5
Open CVEs detected
patch speed
0.50 / 0.5
⚠ Estimated — no CVE patch history
kev exposure
1.50 / 1.5
No KEV exposure
supply chain risk
-1.50 / 10.0
Risk 56.4/100
Score breakdown
schema v2Vulnerability posture
vulnerability posture
0.0
25%
Release responsiveness
release responsiveness
10.0
5%
Dependency exposure
dependency exposure
4.4
10%
Provenance trust
provenance trust
5.0
40%
Maintainer health
maintainer health
10.0
10%
Operational risk
operational risk
8.5
10%
How is this calculated?
The six dimensions group the legacy score signals into weighted categories: direct vulnerability status, patch responsiveness, dependency exposure, provenance checks, maintainer activity, and exploitability risk. The flat component values above remain available for compatibility.
Supply Chain Risk
Risk 56.4/100Scorecard
Scorecard 5.0/10OpenSSF Scorecard evaluates supply-chain security practices automatically. Score ≥ 6 is passing; ≥ 8 is excellent.
| Check | Score | Reason |
|---|---|---|
| Maintained | 10 | 30 commit(s) and 11 issue activity found in the last 90 days -- score normalized to 10 |
| Code-Review | 0 | Found 2/30 approved changesets -- score normalized to 0 |
| Security-Policy | 9 | security policy file detected |
| CII-Best-Practices | 0 | no effort to earn an OpenSSF best practices badge detected |
| Dangerous-Workflow | 10 | no dangerous workflow patterns detected |
| Token-Permissions | 0 | detected GitHub workflow tokens with excessive permissions |
| Binary-Artifacts | 9 | binaries present in source code |
| License | 10 | license file detected |
| Branch-Protection | -1 | internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md |
| Fuzzing | 0 | project is not fuzzed |
| Signed-Releases | 0 | Project has not signed or included provenance with any releases. |
| Pinned-Dependencies | 5 | dependency not pinned by hash detected -- score normalized to 5 |
| SAST | 0 | SAST tool is not run on all commits -- score normalized to 0 |
| Packaging | 10 | packaging workflow detected |
OpenSSF Badge
Badge indicates adherence to open-source best practices.
Dependency Vulnerabilities
Scanning the SBOM (Software Bill of Materials) of the latest release for known vulnerabilities in transitive dependencies.
Critical
2
High
24
Medium
17
Low
3
Unknown
4
| CVE | Severity | KEV | Dependency | Affected version | Cleared in release |
|---|---|---|---|---|---|
| CVE-2017-18342 | critical | — | pyyaml | 6.0.3,< 7 | — |
| CVE-2020-14343 | critical | — | pyyaml | 6.0.3,< 7 | — |
| CVE-2012-2374 | high | — | tornado | 6.5.5,< 6.6 | — |
| CVE-2012-2921 | high | — | feedparser | 6.0.12,< 7 | — |
| CVE-2013-1633 | high | — | setuptools | — | — |
| CVE-2014-9720 | high | — | tornado | 6.5.5,< 6.6 | — |
| CVE-2018-1000656 | high | — | flask | 3.1.3,< 3.2 | — |
| CVE-2019-1010083 | high | — | flask | 3.1.3,< 3.2 | — |
| CVE-2019-14322 | high | — | werkzeug | 3.1.8,< 3.2 | — |
| CVE-2019-14806 | high | — | werkzeug | 3.1.8,< 3.2 | — |
| CVE-2019-18874 | high | — | psutil | 7.2.2,< 8 | — |
| CVE-2021-42771 | high | — | babel | 2.18,< 2.19 | — |
| CVE-2022-40897 | high | — | setuptools | — | — |
| CVE-2022-40898 | high | — | wheel | — | — |
| CVE-2022-40899 | high | — | future | — | — |
| CVE-2023-25577 | high | — | werkzeug | 3.1.8,< 3.2 | — |
| CVE-2023-28117 | high | — | sentry-sdk | 2.58.0,< 3 | — |
| CVE-2023-30861 | high | — | flask | 3.1.3,< 3.2 | — |
| CVE-2024-34069 | high | — | werkzeug | 3.1.8,< 3.2 | — |
| CVE-2024-52804 | high | — | tornado | 6.5.5,< 6.6 | — |
| CVE-2024-6345 | high | — | setuptools | — | — |
| CVE-2025-47273 | high | — | setuptools | — | — |
| CVE-2025-47287 | high | — | tornado | 6.5.5,< 6.6 | — |
| CVE-2026-24049 | high | — | wheel | — | — |
| CVE-2026-31958 | high | — | tornado | 6.5.5,< 6.6 | — |
| CVE-2026-35536 | high | — | tornado | 6.5.5,< 6.6 | — |
| CVE-2009-5065 | medium | — | feedparser | 6.0.12,< 7 | — |
| CVE-2016-10516 | medium | — | werkzeug | 3.1.8,< 3.2 | — |
| CVE-2020-28724 | medium | — | werkzeug | 3.1.8,< 3.2 | — |
| CVE-2021-29510 | medium | — | pydantic | 2.13.0,< 3 | — |
| CVE-2023-28370 | medium | — | tornado | 6.5.5,< 6.6 | — |
| CVE-2023-46136 | medium | — | werkzeug | 3.1.8,< 3.2 | — |
| CVE-2024-3772 | medium | — | pydantic | 2.13.0,< 3 | — |
| CVE-2024-49766 | medium | — | werkzeug | 3.1.8,< 3.2 | — |
| CVE-2024-49767 | medium | — | werkzeug | 3.1.8,< 3.2 | — |
| CVE-2025-66221 | medium | — | werkzeug | 3.1.8,< 3.2 | — |
| CVE-2026-21860 | medium | — | werkzeug | 3.1.8,< 3.2 | — |
| CVE-2026-25645 | medium | — | requests | 2.32.5 | — |
| CVE-2026-27199 | medium | — | werkzeug | 3.1.8,< 3.2 | — |
| GHSA-753j-mpmx-qq6g | medium | — | tornado | 6.5.5,< 6.6 | — |
| GHSA-78cv-mqj4-43f7 | medium | — | tornado | 6.5.5,< 6.6 | — |
| GHSA-qppv-j76h-2rpx | medium | — | tornado | 6.5.5,< 6.6 | — |
| GHSA-w235-7p84-xx57 | medium | — | tornado | 6.5.5,< 6.6 | — |
| CVE-2023-23934 | low | — | werkzeug | 3.1.8,< 3.2 | — |
| CVE-2024-40647 | low | — | sentry-sdk | 2.58.0,< 3 | — |
| CVE-2026-27205 | low | — | flask | 3.1.3,< 3.2 | — |
| CVE-2011-1156 | unknown | — | feedparser | 6.0.12,< 7 | — |
| CVE-2011-1157 | unknown | — | feedparser | 6.0.12,< 7 | — |
| CVE-2011-1158 | unknown | — | feedparser | 6.0.12,< 7 | — |
| CVE-2022-29361 | unknown | — | werkzeug | 3.1.8,< 3.2 | — |
Showing 50 of 50