CVE-2021-20291

NameCVE-2021-20291
DescriptionA deadlock vulnerability was found in 'github.com/containers/storage' in versions before 1.28.1. When a container image is processed, each layer is unpacked using `tar`. If one of those layers is not a valid `tar` archive this causes an error leading to an unexpected situation where the code indefinitely waits for the tar unpacked stream, which never finishes. An attacker could use this vulnerability to craft a malicious image, which when downloaded and stored by an application using containers/storage, would then cause a deadlock leading to a Denial of Service (DoS).
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
Debian Bugs988942

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
golang-github-containers-storage (PTS)bullseye1.24.8+dfsg1-1+deb11u1vulnerable
bookworm1.43.0+ds1-8fixed
sid, trixie1.51.0+ds1-2fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
golang-github-containers-storagesourceexperimental1.29.0+ds1-1
golang-github-containers-storagesource(unstable)1.34.1+ds1-1988942

Notes

[bullseye] - golang-github-containers-storage <no-dsa> (Minor issue)
https://github.com/containers/storage/commit/306fcabc964470e4b3b87a43a8f6b7d698209ee1
golang-github-containers-buildah uses golang-github-containers-storage compression support.
docker.io already uses the same library as the fix for golang-github-containers-storage.

Search for package or bug name: Reporting problems