CVE-2021-29499: Predictable SIF UUID Identifiers in github.com/sylabs/sif

github.com/sylabs/sif Updated 02 Oct 2025

Summary

18/05/2021
Yes i
High
7.5

CVE-2021-29499: Predictable SIF UUID Identifiers in github.com/sylabs/sif. Affects github.com/sylabs/sif versions < 1.2.3. Fixed in 1.2.3. How to fix ↓

Also tracked for

The same CVE-2021-29499 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Sponsored Devnack Mobile apps built by Devnack Design, build and launch iOS and Android apps with a senior product team. From idea to store release Start a project

Background

The package under scrutiny is github.com/sylabs/sif, an open-source Go package. It is used for manipulating Singularity Image Format (SIF) files. SIF files are container images that can be used for packaging and distributing software. The package provides various functions and tools for creating, modifying, and inspecting SIF files. However, it is vulnerable to a predictable UUID identifier issue.

Vulnerability Detail

The vulnerability in github.com/sylabs/sif arises from the insecure randomness in the version of the github.com/satori/go.uuid module used as a dependency. This results in predictable UUID identifiers being generated by the siftool new command and the func siftool.New() function. The impact of this vulnerability is that the generated UUIDs can be easily guessed, which can lead to security issues and potential attacks. The vulnerability has a CVSS score of 7.5, indicating a high severity level.

How To Fix

Minimum fixed version

1.2.3

This is the first release that contains the fix.

go get github.com/sylabs/sif@v1.2.3

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

If upgrading to a non-vulnerable version is not feasible, users can apply a workaround by ensuring that the ID field in the CreateInfo struct is generated using a version of github.com/satori/go.uuid that is not vulnerable. One way to obtain a non-vulnerable version is by running the following command: go get github.com/satori/go.uuid@75cca531ea763666bc46e531da3b4c3b95f64557

Conclusion

In conclusion, the github.com/sylabs/sif package is vulnerable to a predictable UUID identifier issue. Users are advised to upgrade to version 1.2.3 or later to fix this vulnerability. If upgrading is not possible, applying the mentioned workaround can help mitigate the risk. For more information and support, please contact DevNack.com.

See every vulnerability recorded for github.com/sylabs/sif →

Share this vulnerability

FAQ

The impact of this vulnerability is that the generated UUID identifiers can be easily guessed, which can lead to security issues and potential attacks.

To fix this vulnerability, you should upgrade to version 1.2.3 or later of the github.com/sylabs/sif package.

Yes, if upgrading to a non-vulnerable version is not feasible, you can ensure that the ID field in the CreateInfo struct is generated using a non-vulnerable version of github.com/satori/go.uuid.

You can find more information about this vulnerability in the GitHub advisory: https://github.com/sylabs/sif/issues/new

For further support on vulnerability remediation, you can contact info@devnack.com

How To Fix

Minimum fixed version

1.2.3

This is the first release that contains the fix.

go get github.com/sylabs/sif@v1.2.3

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback