Skip to content

← Actionable
Critical, CVSS 9.3

go.uuid has Predictable UUID Identifiers

CVE-2021-3538GHSA-33m6-q9v5-62r7

What to do

Vendor fix available. Upgrade each affected package to the fixed version on its release line (github.com/satori/go.uuid 1.2.1-0.20180404165556-75cca531ea76), redeploy, then verify what is actually installed.

This page has no inventory attached, so it cannot say whether you are affected. A vendor fix is not proof that your deployment is fixed.

Affected packages

  • Go github.com/satori/go.uuid

    Affected
    >= 1.2.1-0.20180103161547-0ef6afb2f6cd, < 1.2.1-0.20180404165556-75cca531ea76
    Fixed in
    1.2.1-0.20180404165556-75cca531ea76

Sources

  • GitHub Advisory Database and maintainer security advisories on GitHub

    GitHub-reviewed advisory GHSA-33m6-q9v5-62r7 lists affected ranges: Go github.com/satori/go.uuid >=1.2.1-0.20180103161547-0ef6afb2f6cd <1.2.1-0.20180404165556-75cca531ea76

    VerifiedObserved Structured GitHub Advisory Database record (type=reviewed) from the GitHub REST API.

Severity and exploitation
Exploitation
No confirmed exploitation recorded. Patch Next marks exploitation only from CISA KEV.
CVSS 4.0
9.3 · CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N · score source
EPSS
  • CVE-2021-3538: 2.31% estimated exploitation activity in the next 30 days; percentile 83.38 (FIRST EPSS, 2026-11-03). This is a model estimate, not proof of exploitation or customer exposure.
Source description

As published by the source; long descriptions are shortened.

CVE Description for go.uuid A flaw was found in github.com/satori/go.uuid in versions from commit 0ef6afb2f6cdd6cdaeee3885a95099c63f18fc8c to d91630c8510268e75203009fe7daf2b8e1d60c45. Due to insecure randomness in the g.rand.Read function the generated UUIDs are predictable for an attacker. Update on 19 September 2024 -- This vulnerability never existed in sif The official NIST CVE-2021-3538 record says: A flaw was found in github.com/satori/go.uuid in versions from commit 0ef6afb2f6cdd6cdaeee3885a95099c63f18fc8c to d91630c8510268e75203009fe7daf2b8e1d60c45. That commit and that fix were never in a tagged release of satori/go.uuid, and prior to this announcement sif had used the last tag, 1.2.0. The NIST record says version 1.2.0 was vulnerable, but that's not true. So sif was never vulnerable to this. Also, beginning with version 2.0.0, sif does not use satori/go.uuid anymore. This update was made in response to issue #243 which has more details. The original, incorrect sif…

Dates and revisions
Published by the source
Last modified by the source
Source last checked
  1. Revision 1 · created ·

    Published from ghsa record GHSA-33m6-q9v5-62r7

Agent brief

Preview the exact text before you copy it. Commands are read-only suggestions; review them before running anything.

# Patch Next advisory brief: CVE-2021-3538

Advisory: go.uuid has Predictable UUID Identifiers
IDs: CVE-2021-3538, GHSA-33m6-q9v5-62r7
Record: https://patchnext.com/advisories/cve-2021-3538 (revision 1, source checked 26 Oct 2026, 15:05 UTC)
Inventory: none attached. This brief comes from a public page and does not say whether any deployment is affected.
Severity: Critical (CVSS 9.3)
Exploitation: no confirmed exploitation recorded. Patch Next confirms exploitation only from CISA KEV.
Vendor response: Vendor fix available; fixed versions by package: github.com/satori/go.uuid 1.2.1-0.20180404165556-75cca531ea76. A vendor fix does not mean a deployment is fixed.

## Affected components
- Go github.com/satori/go.uuid: affected >= 1.2.1-0.20180103161547-0ef6afb2f6cd, < 1.2.1-0.20180404165556-75cca531ea76; fixed in 1.2.1-0.20180404165556-75cca531ea76

## Suggested inspection (read-only)
- Go github.com/satori/go.uuid: check the installed version with your package manager.

## Supported action
Upgrade each affected component to a fixed version on its release line. For a transitive dependency, upgrade the parent package or add an override or constraint, then regenerate the lockfile. Redeploy every environment that ran an affected version.

## Required regression checks
- Run the test suite and a production build.
- Exercise the features that depend on github.com/satori/go.uuid.
- Repeat the inspection and confirm that only fixed versions remain installed.

## Rollback considerations
- Keep the previous lockfile and deployment artifact. Rolling back reinstates the vulnerable version, so apply any documented mitigation while you fix forward.

## Unresolved questions
- Which deployments run an affected version?
- Exploitation status can change. Check again before lowering the priority.
- Mark the work resolved only after the fixed version is verified in production.

## Sources
- Verified: https://github.com/advisories/GHSA-33m6-q9v5-62r7 (GitHub-reviewed advisory GHSA-33m6-q9v5-62r7 lists affected ranges: Go github.com/satori/go.uuid >=1.2.1-0.20180103161547-0ef6afb2f6cd <1.2.1-0.20180404165556-75cca531ea76)

Commands are suggestions: review each one before running it.

Loading voting…