CVE-2025-39789 (GCVE-0-2025-39789)

Vulnerability from cvelistv5 – Published: 2025-09-11 16:56 – Updated: 2026-08-05 12:05
VLAI
Title
crypto: x86/aegis - Add missing error checks
Summary
In the Linux kernel, the following vulnerability has been resolved: crypto: x86/aegis - Add missing error checks The skcipher_walk functions can allocate memory and can fail, so checking for errors is necessary.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 1d373d4e8e15b358f08de52956b32e0e38a11f84 , < 475104178f4d30e749ee4f5473c87f692b93bebb (git)
Affected: 1d373d4e8e15b358f08de52956b32e0e38a11f84 , < 3d9eb180fbe8828cce43bce4c370124685b205c3 (git)
guessed Create a notification for this product.
Linux Linux Affected: 4.18
Unaffected: 0 , < 4.18 (semver)
Unaffected: 6.16.4 , ≤ 6.16.* (semver)
Unaffected: 6.17 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "arch/x86/crypto/aegis128-aesni-glue.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "475104178f4d30e749ee4f5473c87f692b93bebb",
              "status": "affected",
              "version": "1d373d4e8e15b358f08de52956b32e0e38a11f84",
              "versionType": "git"
            },
            {
              "lessThan": "3d9eb180fbe8828cce43bce4c370124685b205c3",
              "status": "affected",
              "version": "1d373d4e8e15b358f08de52956b32e0e38a11f84",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "arch/x86/crypto/aegis128-aesni-glue.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "4.18"
            },
            {
              "lessThan": "4.18",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.16.*",
              "status": "unaffected",
              "version": "6.16.4",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.17",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.16.4",
                  "versionStartIncluding": "4.18",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.17",
                  "versionStartIncluding": "4.18",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ncrypto: x86/aegis - Add missing error checks\n\nThe skcipher_walk functions can allocate memory and can fail, so\nchecking for errors is necessary."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.3,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The AEGIS-128 AEAD is driven from the local crypto API \u2014 an unprivileged user reaches it directly via an AF_ALG/algif_aead socket, and in-kernel consumers (dm-crypt, xfrm ESP) are configured locally. A remote peer cannot itself supply input that reaches the failing allocation, so this is local.\nAC:L - The failure requires a memory allocation failure inside skcipher_walk, but the attacker can both force the allocating slow path on every walk step (by submitting scatterlists fragmented below the 16-byte chunksize) and induce the memory pressure, then retry the operation arbitrarily many times; the GFP_ATOMIC variant used by softirq consumers fails readily under attacker-generated load.\nPR:L - Binding an AF_ALG socket to \"aegis128\" and issuing encrypt requests requires only an unprivileged local account \u2014 no capability, and module autoload happens on the user\u0027s behalf.\nUI:N - The attacker triggers the encrypt/decrypt path entirely on their own; no victim action is needed.\nS:U - The faulty error handling and its consequences stay within the kernel\u0027s own security authority; no VM, IOMMU, or sandbox boundary is crossed.\nC:H - On the unchecked error path the encrypt call returns success without encrypting, so the \"ciphertext\" handed to the caller is the raw plaintext (in-place operations) or stale kernel buffer contents (out-of-place, e.g. dm-crypt/ESP buffers), disclosing data that was supposed to be protected to disk, network peers, or backups.\nI:H - The kernel reports a successful AEAD operation while producing unencrypted, partially encrypted, or stale output with a mismatched tag, so data written to encrypted storage or an encrypted tunnel is silently wrong and cannot be distinguished from valid output by the caller.\nA:L - No kernel crash, hang, or corruption occurs; the impact is that the silently bad ciphertext/tag causes downstream rejection \u2014 dropped IPsec packets, I/O errors on integrity-protected volumes, and unrecoverable stored blocks \u2014 which is a limited interruption rather than a full loss of availability."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T12:05:09.715Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/475104178f4d30e749ee4f5473c87f692b93bebb"
        },
        {
          "url": "https://git.kernel.org/stable/c/3d9eb180fbe8828cce43bce4c370124685b205c3"
        }
      ],
      "title": "crypto: x86/aegis - Add missing error checks",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2025-39789",
    "datePublished": "2025-09-11T16:56:37.912Z",
    "dateReserved": "2025-04-16T07:20:57.131Z",
    "dateUpdated": "2026-08-05T12:05:09.715Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2025-39789",
      "date": "2026-09-21",
      "epss": "0.00134",
      "percentile": "0.03296"
    },
    "microsoft_vex": {
      "current_release_date": "2026-08-10T14:41:07.000Z",
      "cve": "CVE-2025-39789",
      "id": "msrc_CVE-2025-39789",
      "initial_release_date": "2025-09-13T01:03:19.000Z",
      "product_status:known_affected": "22",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "crypto: x86/aegis - Add missing error checks",
      "url": "https://msrc.microsoft.com/csaf/vex/2025/msrc_cve-2025-39789.json",
      "version": "18"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "arch/x86/crypto/aegis128-aesni-glue.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "475104178f4d30e749ee4f5473c87f692b93bebb",
                    "status": "affected",
                    "version": "1d373d4e8e15b358f08de52956b32e0e38a11f84",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "3d9eb180fbe8828cce43bce4c370124685b205c3",
                    "status": "affected",
                    "version": "1d373d4e8e15b358f08de52956b32e0e38a11f84",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "arch/x86/crypto/aegis128-aesni-glue.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "4.18"
                  },
                  {
                    "lessThan": "4.18",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.16.*",
                    "status": "unaffected",
                    "version": "6.16.4",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "6.17",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "configurations": [
          {
            "nodes": [
              {
                "cpeMatch": [
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "6D4A6943-C74A-4D0A-A687-B7A52F9921D5",
                    "versionEndExcluding": "6.16.4",
                    "versionStartIncluding": "4.18",
                    "vulnerable": true
                  }
                ],
                "negate": false,
                "operator": "OR"
              }
            ]
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ncrypto: x86/aegis - Add missing error checks\n\nThe skcipher_walk functions can allocate memory and can fail, so\nchecking for errors is necessary."
          }
        ],
        "id": "CVE-2025-39789",
        "lastModified": "2026-07-30T06:23:45.383",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "LOW",
                "baseScore": 7.3,
                "baseSeverity": "HIGH",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "HIGH",
                "privilegesRequired": "LOW",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L",
                "version": "3.1"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 5.5,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            },
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "HIGH",
                "baseScore": 5.5,
                "baseSeverity": "MEDIUM",
                "confidentialityImpact": "NONE",
                "integrityImpact": "NONE",
                "privilegesRequired": "LOW",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 3.6,
              "source": "nvd@nist.gov",
              "type": "Primary"
            }
          ]
        },
        "published": "2025-09-11T17:15:45.220",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/3d9eb180fbe8828cce43bce4c370124685b205c3"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/475104178f4d30e749ee4f5473c87f692b93bebb"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Modified",
        "weaknesses": [
          {
            "description": [
              {
                "lang": "en",
                "value": "NVD-CWE-noinfo"
              }
            ],
            "source": "nvd@nist.gov",
            "type": "Primary"
          }
        ]
      }
    },
    "redhat_vex": {
      "aggregate_severity": "None",
      "current_release_date": "2026-06-30T10:38:10+00:00",
      "cve": "CVE-2025-39789",
      "id": "CVE-2025-39789",
      "initial_release_date": "2025-09-11T00:00:00+00:00",
      "product_status:known_not_affected": "274",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: crypto: x86/aegis - Add missing error checks",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2025/cve-2025-39789.json",
      "version": "3"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…