Skip to content
Fencer Vulns
high 7.5

CVE-2020-13845 json

Execution Control List (ECL) Is Insecure in Singularity

published 2020-07-14 6 y ago modified 2026-07-08 4 mo ago also GHSA-pmfr-63c2-jr5c , EUVD-2021-2562

cvss
7.5
version 3.1, NVD
cisa kev
Not listed
not in CISA's catalog
epss
0.5%
EPSS 0.5% chance of exploitation in 30 days, percentile 44%
public exploits
0
none known

Summary

Sylabs Singularity 3.0 through 3.5 has Improper Validation of an Integrity Check Value. Image integrity is not validated when an ECL policy is enforced. The fingerprint required by the ECL is compared against the signature object descriptor(s) in the SIF file, rather than to a cryptographically validated signature.

Patch / fix

  • go github.com/sylabs/singularity 3.6.0
  • singularity openSUSE Tumbleweed 3.8.3-1.2
  • singularity Package Hub 15 SP2 3.6.0-bp152.2.4.1
  • singularity openSUSE Leap 15.1 3.6.0-lp151.2.6.1
  • singularity openSUSE Leap 15.2 3.6.0-lp152.2.3.1

opensuse advisories openSUSE-SU-2024:11384-1openSUSE-SU-2020:1100-1openSUSE-SU-2020:1037-1openSUSE-SU-2020:1011-1

  • singularity Alpine 3.24, Alpine 3.23, Alpine 3.22 +3 more 3.6.0-r0

alpine advisories ALPINE-CVE-2020-13845

Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

Exploit prediction

0.52% chance of exploitation in the next 30 days, higher than 44% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
NVD 3.1 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
NVD 2.0 5.0 AV:N/AC:L/Au:N/C:N/I:P/A:N
GitHub 3.1 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N

Affected packages

ecosystem package affected fixed in
go github.com/sylabs/singularity
>=3.0.0, <3.6.0
3.6.0

Classification

Weakness
  • CWE-347 Improper Verification of Cryptographic Signature
  • CWE-354 Improper Validation of Integrity Check Value

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.