Containerd has image-pull DoS via crafted OCI index graph amplification
### Impact A vulnerability exists in containerd's image pull handlers where a crafted OCI image index containing deeply nested or heavily fanned-out descriptor graphs can cause unbounded CPU and memory consumption. During the `PullImage` operation, the recursive traversal and processing of child descriptors lack sufficient depth and breadth limits, and fail to adequately deduplicate identical descriptors. This unbounded traversal leads to excessive resource allocation. Consequently, pulling a malicious image reference can result in prolonged stalls during container creation and significant resource pressure on the host system. This issue occurs entirely during the image pull phase, prior to any container execution. ### Patches This bug has been fixed in containerd 2.4.1, 2.3.6, 2.2.9, 2.0.13, and 1.7.36. Users should update to these versions to resolve the issue. ### Workarounds There are no known workarounds for this issue. Users are advised to only pull trusted images from known registries until the patch can be applied. ### Credits The containerd project would like to thank Jakub Ciolek at ElevenLabs and @jlgore who independently discovered and responsibly disclosed this issue in accordance with the [containerd security policy](https://github.com/containerd/project/blob/main/SECURITY.md). ### For more information If you have any questions or comments about this advisory: * Open an issue in [containerd](https://github.com/containerd/containerd/issues/new/choose) * Email us
GHSA-pg57-6jwg-q645
Primary source · Revision 1
Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.
Security context
Source reference: osv:GHSA-pg57-6jwg-q645
github.com/containerd/containerd/v2
Source reference: /affected/0/package/name
- Affected versions
- Not stated in this record
- Fixed versions
- 2.0.13
Source reference:
/affected/0/ranges - Prerequisites
- Not stated in this record
github.com/containerd/containerd
Source reference: /affected/1/package/name
- Affected versions
- Not stated in this record
- Fixed versions
- 1.7.36
Source reference:
/affected/1/ranges - Prerequisites
- Not stated in this record
github.com/containerd/containerd/v2
Source reference: /affected/2/package/name
- Affected versions
- Not stated in this record
- Fixed versions
- 2.2.9
Source reference:
/affected/2/ranges - Prerequisites
- Not stated in this record
github.com/containerd/containerd/v2
Source reference: /affected/3/package/name
- Affected versions
- Not stated in this record
- Fixed versions
- 2.3.6
Source reference:
/affected/3/ranges - Prerequisites
- Not stated in this record
github.com/containerd/containerd/v2
Source reference: /affected/4/package/name
- Affected versions
- 2.4.0
Source reference:
/affected/4/versions - Fixed versions
- 2.4.1
Source reference:
/affected/4/ranges - Prerequisites
- Not stated in this record
Structured affected-version data
Original package identities and version rules from this source.
[
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "2.0.0"
},
{
"fixed": "2.0.13"
}
]
}
],
"package": {
"name": "github.com/containerd/containerd/v2",
"purl": "pkg:golang/github.com/containerd/containerd/v2",
"ecosystem": "Go"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-pg57-6jwg-q645/GHSA-pg57-6jwg-q645.json"
}
},
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "0"
},
{
"fixed": "1.7.36"
}
]
}
],
"package": {
"name": "github.com/containerd/containerd",
"purl": "pkg:golang/github.com/containerd/containerd",
"ecosystem": "Go"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-pg57-6jwg-q645/GHSA-pg57-6jwg-q645.json",
"last_known_affected_version_range": "<= 1.7.35"
}
},
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "2.1.0"
},
{
"fixed": "2.2.9"
}
]
}
],
"package": {
"name": "github.com/containerd/containerd/v2",
"purl": "pkg:golang/github.com/containerd/containerd/v2",
"ecosystem": "Go"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-pg57-6jwg-q645/GHSA-pg57-6jwg-q645.json"
}
},
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "2.3.0"
},
{
"fixed": "2.3.6"
}
]
}
],
"package": {
"name": "github.com/containerd/containerd/v2",
"purl": "pkg:golang/github.com/containerd/containerd/v2",
"ecosystem": "Go"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-pg57-6jwg-q645/GHSA-pg57-6jwg-q645.json"
}
},
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "2.4.0"
},
{
"fixed": "2.4.1"
}
]
}
],
"package": {
"name": "github.com/containerd/containerd/v2",
"purl": "pkg:golang/github.com/containerd/containerd/v2",
"ecosystem": "Go"
},
"versions": [
"2.4.0"
],
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-pg57-6jwg-q645/GHSA-pg57-6jwg-q645.json"
}
}
]- Related CVEs
- CVE-2026-53493
Source reference:
/aliases
Publisher severity
No explicit severity was provided.
- Event
- #63891 · Revision 1
- Added to Heist Feed
- Publisher date