CVE-2021-43784

Source
https://nvd.nist.gov/vuln/detail/CVE-2021-43784
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-43784.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2021-43784
Aliases
Related
Published
2021-12-06T18:15:08Z
Modified
2024-09-18T03:16:49.873347Z
Severity
  • 5.0 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L CVSS Calculator
Summary
[none]
Details

runc is a CLI tool for spawning and running containers on Linux according to the OCI specification. In runc, netlink is used internally as a serialization system for specifying the relevant container configuration to the C portion of the code (responsible for the based namespace setup of containers). In all versions of runc prior to 1.0.3, the encoder did not handle the possibility of an integer overflow in the 16-bit length field for the byte array attribute type, meaning that a large enough malicious byte array attribute could result in the length overflowing and the attribute contents being parsed as netlink messages for container configuration. This vulnerability requires the attacker to have some control over the configuration of the container and would allow the attacker to bypass the namespace restrictions of the container by simply adding their own netlink payload which disables all namespaces. The main users impacted are those who allow untrusted images with untrusted configurations to run on their machines (such as with shared cloud infrastructure). runc version 1.0.3 contains a fix for this bug. As a workaround, one may try disallowing untrusted namespace paths from your container. It should be noted that untrusted namespace paths would allow the attacker to disable namespace protections entirely even in the absence of this bug.

References

Affected packages

Debian:11 / runc

Package

Name
runc
Purl
pkg:deb/debian/runc?arch=source

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
1.0.0~rc93+ds1-5+deb11u4

Affected versions

1.*

1.0.0~rc93+ds1-5
1.0.0~rc93+ds1-5+deb11u1
1.0.0~rc93+ds1-5+deb11u2
1.0.0~rc93+ds1-5+deb11u3

Ecosystem specific

{
    "urgency": "not yet assigned"
}

Debian:12 / runc

Package

Name
runc
Purl
pkg:deb/debian/runc?arch=source

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
1.0.3+ds1-1

Ecosystem specific

{
    "urgency": "not yet assigned"
}

Debian:13 / runc

Package

Name
runc
Purl
pkg:deb/debian/runc?arch=source

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
1.0.3+ds1-1

Ecosystem specific

{
    "urgency": "not yet assigned"
}

Git / github.com/opencontainers/runc

Affected ranges

Type
GIT
Repo
https://github.com/opencontainers/runc
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed
Fixed
Fixed

Affected versions

v0.*

v0.0.1
v0.0.2
v0.0.3
v0.0.4
v0.0.5
v0.0.6
v0.0.7
v0.0.8
v0.0.9
v0.1.0
v0.1.1

v1.*

v1.0.0
v1.0.0-rc1
v1.0.0-rc10
v1.0.0-rc2
v1.0.0-rc3
v1.0.0-rc4
v1.0.0-rc5
v1.0.0-rc6
v1.0.0-rc7
v1.0.0-rc8
v1.0.0-rc9
v1.0.0-rc90
v1.0.0-rc91
v1.0.0-rc92
v1.0.0-rc93
v1.0.0-rc94
v1.0.0-rc95