Podman: buildah: cri-o: fips crypto-policy directory mounting issue in containers/common go library
Description
A flaw was found in Go. When FIPS mode is enabled on a system, container runtimes may incorrectly handle certain file paths due to improper validation in the containers/common Go library. This flaw allows an attacker to exploit symbolic links and trick the system into mounting sensitive host directories inside a container. This issue also allows attackers to access critical host files, bypassing the intended isolation between containers and the host system.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
When FIPS mode is enabled, improper file path validation in the containers/common Go library allows an attacker to use symbolic links to mount sensitive host directories inside a container, breaking isolation.
Vulnerability
CVE-2024-9341 is a flaw in the containers/common Go library, which is used by container runtimes and tools such as Podman, Buildah, and CRI-O. When FIPS mode is enabled on a system, the library incorrectly validates certain file paths, allowing symbolic links to bypass intended restrictions [1][2][3][4].
Exploitation
An attacker who can craft a container image or influence its configuration can exploit this issue by embedding symbolic links that point to sensitive host directories. Because the path validation does not properly handle symlinks when FIPS mode is active, the container runtime may mount those host paths inside the container, bypassing the isolation that normally prevents access to the host filesystem [1]. No authentication is required beyond the ability to deploy or modify a container.
Impact
Successful exploitation allows an attacker to read or write arbitrary files on the host system from within a container, including sensitive data such as credentials, configuration files, and other critical host resources. This effectively breaks the security boundary between the container and the host, leading to a full compromise of the host's confidentiality and integrity [1][4].
Mitigation
Red Hat has released updated packages for OpenShift Container Platform 4.15, 4.16, and 4.17 that address this vulnerability [1][2][3][4]. Users are advised to upgrade to the fixed versions. There is no indication of active exploitation in the wild, and the issue is rated as Moderate severity.
AI Insight generated on May 20, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected packages
Versions sourced from the GitHub Security Advisory.
| Package | Affected versions | Patched versions |
|---|---|---|
github.com/containers/commonGo | < 0.60.4 | 0.60.4 |
Affected products
106- Range: < 0.60.4
- osv-coords105 versionspkg:apk/chainguard/buildahpkg:apk/chainguard/podmanpkg:apk/chainguard/podman-docpkg:apk/chainguard/skopeopkg:apk/chainguard/skopeo-fipspkg:apk/chainguard/zotpkg:apk/wolfi/buildahpkg:apk/wolfi/podmanpkg:apk/wolfi/podman-docpkg:apk/wolfi/skopeopkg:apk/wolfi/zotpkg:golang/github.com/containers/commonpkg:rpm/almalinux/aardvark-dnspkg:rpm/almalinux/buildahpkg:rpm/almalinux/buildah-testspkg:rpm/almalinux/cockpit-podmanpkg:rpm/almalinux/conmonpkg:rpm/almalinux/containernetworking-pluginspkg:rpm/almalinux/containers-commonpkg:rpm/almalinux/container-selinuxpkg:rpm/almalinux/critpkg:rpm/almalinux/criupkg:rpm/almalinux/criu-develpkg:rpm/almalinux/criu-libspkg:rpm/almalinux/crunpkg:rpm/almalinux/fuse-overlayfspkg:rpm/almalinux/libslirppkg:rpm/almalinux/libslirp-develpkg:rpm/almalinux/netavarkpkg:rpm/almalinux/oci-seccomp-bpf-hookpkg:rpm/almalinux/podmanpkg:rpm/almalinux/podman-catatonitpkg:rpm/almalinux/podman-dockerpkg:rpm/almalinux/podman-gvproxypkg:rpm/almalinux/podman-pluginspkg:rpm/almalinux/podman-remotepkg:rpm/almalinux/podman-testspkg:rpm/almalinux/python3-criupkg:rpm/almalinux/python3-podmanpkg:rpm/almalinux/runcpkg:rpm/almalinux/skopeopkg:rpm/almalinux/skopeo-testspkg:rpm/almalinux/slirp4netnspkg:rpm/almalinux/toolboxpkg:rpm/almalinux/toolbox-testspkg:rpm/almalinux/udicapkg:rpm/opensuse/buildah&distro=openSUSE%20Leap%2015.5pkg:rpm/opensuse/buildah&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/buildah&distro=openSUSE%20Tumbleweedpkg:rpm/opensuse/govulncheck-vulndb&distro=openSUSE%20Leap%2015.5pkg:rpm/opensuse/govulncheck-vulndb&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/govulncheck-vulndb&distro=openSUSE%20Tumbleweedpkg:rpm/opensuse/podman&distro=openSUSE%20Leap%2015.5pkg:rpm/opensuse/podman&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/podman&distro=openSUSE%20Leap%20Micro%205.5pkg:rpm/opensuse/podman&distro=openSUSE%20Tumbleweedpkg:rpm/rocky-linux/aardvark-dns?distro=rocky-linux-8&epoch=2pkg:rpm/rocky-linux/buildah?distro=rocky-linux-8&epoch=2pkg:rpm/rocky-linux/cockpit-podman?distro=rocky-linux-8&epoch=0pkg:rpm/rocky-linux/conmon?distro=rocky-linux-8&epoch=3pkg:rpm/rocky-linux/containernetworking-plugins?distro=rocky-linux-8&epoch=1pkg:rpm/rocky-linux/containers-common?distro=rocky-linux-8&epoch=2pkg:rpm/rocky-linux/container-selinux?distro=rocky-linux-8&epoch=2pkg:rpm/rocky-linux/criu?distro=rocky-linux-8&epoch=0pkg:rpm/rocky-linux/crun?distro=rocky-linux-8&epoch=0pkg:rpm/rocky-linux/fuse-overlayfs?distro=rocky-linux-8&epoch=0pkg:rpm/rocky-linux/libslirp?distro=rocky-linux-8&epoch=0pkg:rpm/rocky-linux/netavark?distro=rocky-linux-8&epoch=2pkg:rpm/rocky-linux/oci-seccomp-bpf-hook?distro=rocky-linux-8&epoch=0pkg:rpm/rocky-linux/podman?distro=rocky-linux-8&epoch=4pkg:rpm/rocky-linux/python-podman?distro=rocky-linux-8&epoch=0pkg:rpm/rocky-linux/runc?distro=rocky-linux-8&epoch=1pkg:rpm/rocky-linux/skopeo?distro=rocky-linux-8&epoch=2pkg:rpm/rocky-linux/slirp4netns?distro=rocky-linux-8&epoch=0pkg:rpm/rocky-linux/toolbox?distro=rocky-linux-8&epoch=0pkg:rpm/rocky-linux/udica?distro=rocky-linux-8&epoch=0pkg:rpm/suse/buildah&distro=SUSE%20Enterprise%20Storage%207.1pkg:rpm/suse/buildah&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP3-LTSSpkg:rpm/suse/buildah&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP4-ESPOSpkg:rpm/suse/buildah&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP4-LTSSpkg:rpm/suse/buildah&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Containers%2015%20SP5pkg:rpm/suse/buildah&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Containers%2015%20SP6pkg:rpm/suse/buildah&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP3-LTSSpkg:rpm/suse/buildah&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP4-LTSSpkg:rpm/suse/buildah&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP3pkg:rpm/suse/buildah&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP4pkg:rpm/suse/govulncheck-vulndb&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Package%20Hub%2015%20SP5pkg:rpm/suse/govulncheck-vulndb&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Package%20Hub%2015%20SP6pkg:rpm/suse/govulncheck-vulndb&distro=SUSE%20Package%20Hub%2012pkg:rpm/suse/podman&distro=SUSE%20Enterprise%20Storage%207.1pkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP3-LTSSpkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP4-ESPOSpkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP4-LTSSpkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20Micro%205.1pkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20Micro%205.2pkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20Micro%205.3pkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20Micro%205.4pkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20Micro%205.5pkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Containers%2015%20SP5pkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Containers%2015%20SP6pkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP3-LTSSpkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP4-LTSSpkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP3pkg:rpm/suse/podman&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP4pkg:rpm/suse/podman&distro=SUSE%20Linux%20Micro%206.0
< 1.37.3-r1+ 104 more
- (no CPE)range: < 1.37.3-r1
- (no CPE)range: < 5.4.1-r2
- (no CPE)range: < 5.4.1-r2
- (no CPE)range: < 1.16.1-r2
- (no CPE)range: < 1.16.1-r2
- (no CPE)range: < 2.1.1-r3
- (no CPE)range: < 1.37.3-r1
- (no CPE)range: < 5.4.1-r2
- (no CPE)range: < 5.4.1-r2
- (no CPE)range: < 1.16.1-r2
- (no CPE)range: < 2.1.1-r3
- (no CPE)range: < 0.60.4
- (no CPE)range: < 2:1.10.1-2.module_el8.10.0+3909+6e1c1eb7
- (no CPE)range: < 2:1.33.9-1.el9_4
- (no CPE)range: < 2:1.33.9-1.el9_4
- (no CPE)range: < 84.1-1.module_el8.10.0+3876+e55593a8
- (no CPE)range: < 3:2.1.10-1.module_el8.10.0+3876+e55593a8
- (no CPE)range: < 1:1.4.0-5.module_el8.10.0+3876+e55593a8
- (no CPE)range: < 2:1-82.module_el8.10.0+3876+e55593a8
- (no CPE)range: < 2:2.229.0-2.module_el8.10.0+3909+6e1c1eb7
- (no CPE)range: < 3.18-5.module_el8.10.0+3901+4b80ecd7
- (no CPE)range: < 3.18-5.module_el8.10.0+3876+e55593a8
- (no CPE)range: < 3.18-5.module_el8.10.0+3876+e55593a8
- (no CPE)range: < 3.18-5.module_el8.10.0+3909+6e1c1eb7
- (no CPE)range: < 1.14.3-2.module_el8.10.0+3845+87b84552
- (no CPE)range: < 1.13-1.module_el8.10.0+3909+6e1c1eb7
- (no CPE)range: < 4.4.0-2.module_el8.10.0+3876+e55593a8
- (no CPE)range: < 4.4.0-2.module_el8.10.0+3909+6e1c1eb7
- (no CPE)range: < 2:1.10.3-1.module_el8.10.0+3901+4b80ecd7
- (no CPE)range: < 1.2.10-1.module_el8.10.0+3909+6e1c1eb7
- (no CPE)range: < 4:4.9.4-13.el9_4
- (no CPE)range: < 4:4.9.4-15.module_el8.10.0+3909+6e1c1eb7
- (no CPE)range: < 4:4.9.4-13.el9_4
- (no CPE)range: < 4:4.9.4-15.module_el8.10.0+3909+6e1c1eb7
- (no CPE)range: < 4:4.9.4-13.el9_4
- (no CPE)range: < 4:4.9.4-13.el9_4
- (no CPE)range: < 4:4.9.4-13.el9_4
- (no CPE)range: < 3.18-5.module_el8.10.0+3858+6ad51f9f
- (no CPE)range: < 4.9.0-2.module_el8.10.0+3876+e55593a8
- (no CPE)range: < 1:1.1.12-5.module_el8.10.0+3909+6e1c1eb7
- (no CPE)range: < 2:1.14.5-3.module_el8.10.0+3901+4b80ecd7
- (no CPE)range: < 2:1.14.5-3.module_el8.10.0+3876+e55593a8
- (no CPE)range: < 1.2.3-1.module_el8.10.0+3845+87b84552
- (no CPE)range: < 0.0.99.5-2.module_el8.10.0+3901+4b80ecd7
- (no CPE)range: < 0.0.99.5-2.module_el8.10.0+3858+6ad51f9f
- (no CPE)range: < 0.2.6-21.module_el8.10.0+3876+e55593a8
- (no CPE)range: < 1.35.4-150500.3.13.1
- (no CPE)range: < 1.35.4-150500.3.13.1
- (no CPE)range: < 1.37.4-1.1
- (no CPE)range: < 0.0.20241030T212825-150000.1.9.1
- (no CPE)range: < 0.0.20241030T212825-150000.1.9.1
- (no CPE)range: < 0.0.20241030T212825-1.1
- (no CPE)range: < 4.9.5-150500.3.18.1
- (no CPE)range: < 4.9.5-150500.3.18.1
- (no CPE)range: < 4.9.5-150500.3.18.1
- (no CPE)range: < 5.2.4-1.1
- (no CPE)range: < 2:1.10.1-2.module+el8.10.0+1874+ce489889
- (no CPE)range: < 2:1.33.10-1.module+el8.10.0+1880+8e896d1b
- (no CPE)range: < 0:84.1-1.module+el8.10.0+1815+5fe7415e
- (no CPE)range: < 3:2.1.10-1.module+el8.10.0+1815+5fe7415e
- (no CPE)range: < 1:1.4.0-5.module+el8.10.0+1843+6892ab28
- (no CPE)range: < 2:1-82.module+el8.10.0+1843+6892ab28
- (no CPE)range: < 2:2.229.0-2.module+el8.10.0+1815+5fe7415e
- (no CPE)range: < 0:3.18-5.module+el8.10.0+1815+5fe7415e
- (no CPE)range: < 0:1.14.3-2.module+el8.10.0+1815+5fe7415e
- (no CPE)range: < 0:1.13-1.module+el8.10.0+1815+5fe7415e
- (no CPE)range: < 0:4.4.0-2.module+el8.10.0+1815+5fe7415e
- (no CPE)range: < 2:1.10.3-1.module+el8.10.0+1815+5fe7415e
- (no CPE)range: < 0:1.2.10-1.module+el8.10.0+1815+5fe7415e
- (no CPE)range: < 4:4.9.4-15.module+el8.10.0+1880+8e896d1b
- (no CPE)range: < 0:4.9.0-2.module+el8.10.0+1843+6892ab28
- (no CPE)range: < 1:1.1.12-5.module+el8.10.0+1874+ce489889
- (no CPE)range: < 2:1.14.5-3.module+el8.10.0+1843+6892ab28
- (no CPE)range: < 0:1.2.3-1.module+el8.10.0+1815+5fe7415e
- (no CPE)range: < 0:0.0.99.5-2.module+el8.10.0+1815+5fe7415e.rocky.0.2.rocky.0.2
- (no CPE)range: < 0:0.2.6-21.module+el8.10.0+1815+5fe7415e
- (no CPE)range: < 1.35.4-150300.8.28.3
- (no CPE)range: < 1.35.4-150300.8.28.3
- (no CPE)range: < 1.35.4-150400.3.33.1
- (no CPE)range: < 1.35.4-150400.3.33.1
- (no CPE)range: < 1.35.4-150500.3.13.1
- (no CPE)range: < 1.35.4-150500.3.13.1
- (no CPE)range: < 1.35.4-150300.8.28.3
- (no CPE)range: < 1.35.4-150400.3.33.1
- (no CPE)range: < 1.35.4-150300.8.28.3
- (no CPE)range: < 1.35.4-150400.3.33.1
- (no CPE)range: < 0.0.20241030T212825-150000.1.9.1
- (no CPE)range: < 0.0.20241030T212825-150000.1.9.1
- (no CPE)range: < 0.0.20241104T154416-5.1
- (no CPE)range: < 4.9.5-150300.9.43.1
- (no CPE)range: < 4.9.5-150300.9.43.1
- (no CPE)range: < 4.9.5-150400.4.35.1
- (no CPE)range: < 4.9.5-150400.4.35.1
- (no CPE)range: < 4.9.5-150300.9.43.1
- (no CPE)range: < 4.9.5-150300.9.43.1
- (no CPE)range: < 4.9.5-150400.4.35.1
- (no CPE)range: < 4.9.5-150400.4.35.1
- (no CPE)range: < 4.9.5-150500.3.18.1
- (no CPE)range: < 4.9.5-150500.3.18.1
- (no CPE)range: < 4.9.5-150500.3.18.1
- (no CPE)range: < 4.9.5-150300.9.43.1
- (no CPE)range: < 4.9.5-150400.4.35.1
- (no CPE)range: < 4.9.5-150300.9.43.1
- (no CPE)range: < 4.9.5-150400.4.35.1
- (no CPE)range: < 4.9.5-2.1
Patches
1e7db06585c32pkg/subscriptions: use securejoin for the container path
1 file changed · +5 −1
pkg/subscriptions/subscriptions.go+5 −1 modified@@ -11,6 +11,7 @@ import ( "github.com/containers/common/pkg/umask" "github.com/containers/storage/pkg/fileutils" "github.com/containers/storage/pkg/idtools" + securejoin "github.com/cyphar/filepath-securejoin" rspec "github.com/opencontainers/runtime-spec/specs-go" "github.com/opencontainers/selinux/go-selinux/label" "github.com/sirupsen/logrus" @@ -346,7 +347,10 @@ func addFIPSModeSubscription(mounts *[]rspec.Mount, containerRunDir, mountPoint, srcBackendDir := "/usr/share/crypto-policies/back-ends/FIPS" destDir := "/etc/crypto-policies/back-ends" - srcOnHost := filepath.Join(mountPoint, srcBackendDir) + srcOnHost, err := securejoin.SecureJoin(mountPoint, srcBackendDir) + if err != nil { + return fmt.Errorf("resolve %s in the container: %w", srcBackendDir, err) + } if err := fileutils.Exists(srcOnHost); err != nil { if errors.Is(err, os.ErrNotExist) { return nil
Vulnerability mechanics
Generated on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
20- access.redhat.com/errata/RHSA-2024:10147ghsavendor-advisoryx_refsource_REDHATWEB
- access.redhat.com/errata/RHSA-2024:10818ghsavendor-advisoryx_refsource_REDHATWEB
- access.redhat.com/errata/RHSA-2024:7925ghsavendor-advisoryx_refsource_REDHATWEB
- access.redhat.com/errata/RHSA-2024:8039ghsavendor-advisoryx_refsource_REDHATWEB
- access.redhat.com/errata/RHSA-2024:8112ghsavendor-advisoryx_refsource_REDHATWEB
- access.redhat.com/errata/RHSA-2024:8238ghsavendor-advisoryx_refsource_REDHATWEB
- access.redhat.com/errata/RHSA-2024:8263ghsavendor-advisoryx_refsource_REDHATWEB
- access.redhat.com/errata/RHSA-2024:8428ghsavendor-advisoryx_refsource_REDHATWEB
- access.redhat.com/errata/RHSA-2024:8690ghsavendor-advisoryx_refsource_REDHATWEB
- access.redhat.com/errata/RHSA-2024:8694ghsavendor-advisoryx_refsource_REDHATWEB
- access.redhat.com/errata/RHSA-2024:8846ghsavendor-advisoryx_refsource_REDHATWEB
- access.redhat.com/errata/RHSA-2024:9454ghsavendor-advisoryx_refsource_REDHATWEB
- access.redhat.com/errata/RHSA-2024:9459ghsavendor-advisoryx_refsource_REDHATWEB
- github.com/advisories/GHSA-mc76-5925-c5p6ghsaADVISORY
- nvd.nist.gov/vuln/detail/CVE-2024-9341ghsaADVISORY
- access.redhat.com/security/cve/CVE-2024-9341ghsavdb-entryx_refsource_REDHATWEB
- bugzilla.redhat.com/show_bug.cgighsaissue-trackingx_refsource_REDHATWEB
- github.com/containers/common/blob/384f77532f67afc8a73d8e0c4adb0d195df57714/pkg/subscriptions/subscriptions.goghsaWEB
- github.com/containers/common/blob/384f77532f67afc8a73d8e0c4adb0d195df57714/pkg/subscriptions/subscriptions.goghsaWEB
- github.com/containers/common/commit/e7db06585c32e1a782c1d9aa3b71ccd708f5e23fghsaWEB
News mentions
0No linked articles in our index yet.