{"id":"CVE-2019-11328","aliases":["EUVD-2021-2444","GHSA-557g-r22w-9wvx","openSUSE-SU-2019:2288-1","openSUSE-SU-2020:1037-1","openSUSE-SU-2024:11384-1"],"status":"published","title":"Incorrect Permission Assignment for Critical Resource in Singularity","description":"An issue was discovered in Singularity 3.1.0 to 3.2.0-rc2, a malicious user with local/network access to the host system (e.g. ssh) could exploit this vulnerability due to insecure permissions allowing a user to edit files within `/run/singularity/instances/sing/\u003cuser\u003e/\u003cinstance\u003e`. The manipulation of those files can change the behavior of the starter-suid program when instances are joined resulting in potential privilege escalation on the host.","severity":{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.02088,"percentile":0.8172,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-269","CWE-732"],"published":"2019-05-14T20:24:29Z","modified":"2026-10-24T10:50:34Z","fixes":[{"ecosystem":"Go","package":"github.com/sylabs/singularity","fixed_in":["3.2.0"],"sources":["ghsa","osv"]},{"ecosystem":"SUSE:Package Hub 15","package":"singularity","fixed_in":["3.4.1-bp151.3.3.1"],"sources":["osv"]},{"ecosystem":"SUSE:Package Hub 15 SP1","package":"singularity","fixed_in":["3.4.1-bp151.3.3.1"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"Go","package":"github.com/sylabs/singularity","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"3.1.0"},{"fixed":"3.2.0"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/sylabs/singularity","ranges":[{"type":"SEMVER","events":[{"introduced":"3.1.0"},{"fixed":"3.2.0"}]}]},{"source":"osv","ecosystem":"SUSE:Package Hub 15","package":"singularity","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.4.1-bp151.3.3.1"}]}]},{"source":"osv","ecosystem":"SUSE:Package Hub 15 SP1","package":"singularity","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.4.1-bp151.3.3.1"}]}]},{"source":"osv","ecosystem":"openSUSE:Leap 15.1","package":"singularity","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.6.0-lp151.2.6.1"}]}],"bundled":5},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"singularity","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.8.3-1.2"}]}],"bundled":12}],"products":[{"vendor":"fedoraproject","product":"fedora"},{"vendor":"opensuse","product":"backports"},{"vendor":"opensuse","product":"leap"},{"vendor":"sylabs","product":"singularity"}],"references":[{"url":"https://github.com/sylabs/singularity/releases/tag/v3.2.0","tags":["x_refsource_CONFIRM","x_transferred","Release Notes","advisory","web"]},{"url":"http://www.openwall.com/lists/oss-security/2019/05/16/1","tags":["mailing-list","x_refsource_MLIST","x_transferred","Exploit","Mailing List","Third Party Advisory","evidence","web"]},{"url":"http://www.securityfocus.com/bid/108360","tags":["vdb-entry","x_refsource_BID","x_transferred","Broken Link","web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/LNU5BUHFOTYUZVHFUSX2VG4S3RCPUEMA/","tags":["vendor-advisory","x_refsource_FEDORA","x_transferred","web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/5O3TPL5OOTIZEI4H6IQBCCISBARJ6WL3/","tags":["vendor-advisory","x_refsource_FEDORA","x_transferred","web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/LIHV7DSEVTB5SUPEZ2UXGS3Q6WMEQSO2/","tags":["vendor-advisory","x_refsource_FEDORA","x_transferred","web"]},{"url":"http://lists.opensuse.org/opensuse-security-announce/2019-10/msg00028.html","tags":["vendor-advisory","x_refsource_SUSE","x_transferred","Third Party Advisory","advisory","web"]},{"url":"http://lists.opensuse.org/opensuse-security-announce/2020-07/msg00059.html","tags":["vendor-advisory","x_refsource_SUSE","x_transferred","Third Party Advisory","advisory","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2019-11328","tags":["advisory"]},{"url":"https://github.com/sylabs/singularity/commit/618c9d56802399adb329c23ea2b70598eaff4a31","tags":["web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5O3TPL5OOTIZEI4H6IQBCCISBARJ6WL3/"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/LIHV7DSEVTB5SUPEZ2UXGS3Q6WMEQSO2/"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/LNU5BUHFOTYUZVHFUSX2VG4S3RCPUEMA/"},{"url":"https://github.com/advisories/GHSA-557g-r22w-9wvx"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5O3TPL5OOTIZEI4H6IQBCCISBARJ6WL3","tags":["web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/LIHV7DSEVTB5SUPEZ2UXGS3Q6WMEQSO2","tags":["web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/LNU5BUHFOTYUZVHFUSX2VG4S3RCPUEMA","tags":["web"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/IKW24LOLINECHPX4KVSOFZEYFTA7RDEL/#IKW24LOLINECHPX4KVSOFZEYFTA7RDEL","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1125369","tags":["report"]},{"url":"https://bugzilla.suse.com/1128598","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2019-11328","tags":["web"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/EIHKRY3G2SS6X2ZY44CW67IIGHCJUYMO/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1159550","tags":["report"]},{"url":"https://bugzilla.suse.com/1174148","tags":["report"]},{"url":"https://bugzilla.suse.com/1174150","tags":["report"]},{"url":"https://bugzilla.suse.com/1174152","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2019-19724","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2020-13845","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2020-13846","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2020-13847","tags":["web"]},{"url":"","tags":["advisory"]},{"url":"https://www.suse.com/security/cve/CVE-2018-12021","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2018-19295","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2020-15229","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2020-25039","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2020-25040","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2021-29136","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2021-32635","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2019-11328","description":"An issue was discovered in Singularity 3.1.0 to 3.2.0-rc2, a malicious user with local/network access to the host system (e.g. ssh) could exploit this vulnerability due to insecure permissions allowing a user to edit files within `/run/singularity/instances/sing/\u003cuser\u003e/\u003cinstance\u003e`. The manipulation of those files can change the behavior of the starter-suid program when instances are joined resulting in potential privilege escalation on the host.","status":"published","published":"2019-05-14T20:24:29Z","modified":"2024-08-04T22:48:09.093Z","updated_at":"2026-11-02T14:20:26.416173Z"}],"euvd":[{"id":"EUVD-2021-2444","description":"An issue was discovered in Singularity 3.1.0 to 3.2.0-rc2, a malicious user with local/network access to the host system (e.g. ssh) could exploit this vulnerability due to insecure permissions allowing a user to edit files within `/run/singularity/instances/sing/\u003cuser\u003e/\u003cinstance\u003e`. The manipulation of those files can change the behavior of the starter-suid program when instances are joined resulting in potential privilege escalation on the host.","status":"published","published":"2019-05-14T20:24:29Z","modified":"2024-08-04T22:48:09Z","updated_at":"2026-11-03T02:40:49.362838Z"}],"ghsa":[{"id":"GHSA-557g-r22w-9wvx","title":"Incorrect Permission Assignment for Critical Resource in Singularity","description":"An issue was discovered in Singularity 3.1.0 to 3.2.0-rc2, a malicious user with local/network access to the host system (e.g. ssh) could exploit this vulnerability due to insecure permissions allowing a user to edit files within `/run/singularity/instances/sing/\u003cuser\u003e/\u003cinstance\u003e`. The manipulation of those files can change the behavior of the starter-suid program when instances are joined resulting in potential privilege escalation on the host.","status":"published","published":"2021-12-20T18:25:33Z","modified":"2023-09-18T19:41:29Z","cvss":[{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-269","CWE-732"],"updated_at":"2026-11-02T14:37:05.567008Z"}],"nvd":[{"id":"CVE-2019-11328","description":"An issue was discovered in Singularity 3.1.0 to 3.2.0-rc2, a malicious user with local/network access to the host system (e.g. ssh) could exploit this vulnerability due to insecure permissions allowing a user to edit files within `/run/singularity/instances/sing/\u003cuser\u003e/\u003cinstance\u003e`. The manipulation of those files can change the behavior of the starter-suid program when instances are joined resulting in potential privilege escalation on the host.","status":"published","published":"2019-05-14T21:29:01.137Z","modified":"2026-06-17T02:12:43.443Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":9,"vector":"AV:N/AC:L/Au:S/C:C/I:C/A:C","level":"high","assessor":"primary"}],"cwes":["CWE-732"],"updated_at":"2026-11-02T14:05:13.880207Z"}],"osv":[{"id":"CVE-2019-11328","description":"An issue was discovered in Singularity 3.1.0 to 3.2.0-rc2, a malicious user with local/network access to the host system (e.g. ssh) could exploit this vulnerability due to insecure permissions allowing a user to edit files within `/run/singularity/instances/sing/\u003cuser\u003e/\u003cinstance\u003e`. The manipulation of those files can change the behavior of the starter-suid program when instances are joined resulting in potential privilege escalation on the host.","status":"published","published":"2019-05-14T21:29:01.137Z","modified":"2026-10-24T10:50:34.191492499Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:10.383287Z"},{"id":"GHSA-557g-r22w-9wvx","title":"Incorrect Permission Assignment for Critical Resource in Singularity","description":"An issue was discovered in Singularity 3.1.0 to 3.2.0-rc2, a malicious user with local/network access to the host system (e.g. ssh) could exploit this vulnerability due to insecure permissions allowing a user to edit files within `/run/singularity/instances/sing/\u003cuser\u003e/\u003cinstance\u003e`. The manipulation of those files can change the behavior of the starter-suid program when instances are joined resulting in potential privilege escalation on the host.","status":"published","published":"2021-12-20T18:25:33Z","modified":"2023-11-08T04:01:01.092123Z","cvss":[{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-269","CWE-732"],"updated_at":"2026-11-02T15:46:37.864461Z"},{"id":"openSUSE-SU-2019:2288-1","title":"Security update for singularity","description":"This update for singularity fixes the following issues:\n\nsingularity was updated to version 3.4.1:\n\nThis point release addresses the following issues:\n\n- Fixes an issue where a PID namespace was always being used\n- Fixes compilation on non 64-bit architectures\n- Allows fakeroot builds for zypper, pacstrap, and debootstrap\n- Correctly detects seccomp on OpenSUSE\n- Honors GO_MODFLAGS properly in the mconfig generated makefile\n- Passes the Mac hostname to the VM in MacOS Singularity builds\n- Handles temporary EAGAIN failures when setting up loop devices on\nrecent kernels.\n\nNew version 3.4.0. Many changes since 3.2.1, for the full changelog \n  please read CHANGELOG.md\n\nUpdate to version 3.2.1:\n\nThis point release fixes the following bugs:\n\n- Allows users to join instances with non-suid workflow\n- Removes false warning when seccomp is disabled on the host\n- Fixes an issue in the terminal when piping output to commands\n- Binds NVIDIA persistenced socket when `--nv` is invoked\n\nImprove integration with SUSE Products: add support to create Singularity\nimages with SLE.\n\n* Newer SUSE versions use a different path for the RPM database.\n* When the installation succeeds by an installation scriptlet fails\n  zypper returns error code 107. Don't treat this as an error.\n* In order to specify a repository GPG key, add support for\n  multi line variables.\n* In order to specify a list of additional repos, add support\n  to 'indexed' variables.\n* Improve handling of SUSE repositires:\n\n  - For SLE, use SUSEConnect to get all product repos.\n  - Allow to specify a repository GPG key.\n  - Allow to specify additional installation repositories.\n\n- Add group 'singularity', fix ownerships.\n\nUpdated to singularity v3.2.0\n\n* CVE-2019-11328: Instance files are now stored in user's home directory for privacy and\n  many checks have been added to ensure that a user can't manipulate files\n  to change `starter-suid` behavior when instances are joined (many thanks\n  to Matthias Gerstner from the SUSE security team for finding and securely\n  reporting this vulnerability) (boo#1128598)\n\n* New features / functionalities\n\n  - Introduced a new basic framework for creating and managing plugins\n  - Added the ability to create containers through multi-stage builds\n  - Created the concept of a Sylabs Cloud 'remote' endpoint and added the\n    ability for users and admins to set them through CLI and conf files \n  - Added caching for images from Singularity Hub\n  - Made it possible to compile Singularity outside of `$GOPATH`\n  - Added a json partition to SIF files for OCI configuration when building\n    from an OCI source\n  - Full integration with Singularity desktop for MacOS code base\n\n* New Commands\n\n  - Introduced the `plugin` command group for creating and managing plugins.\n\n* Introduced the `remote` command group to support management of Singularity\n  endpoints.\n* Added to the `key` command group to improve PGP key management.\n* Added the `Stage: \u003cname\u003e` keyword to the definition file header and the\n  `from \u003cstage name\u003e` option/argument pair to the `%files` section to\n  support multistage builds\n* Deprecated / removed commands\n\n  - The `--token/-t` option has been deprecated in favor of the `singularity\n    remote` command group\n\n* Changed defaults / behaviors\n\n  - Ask to confirm password on a newly generated PGP key\n  - Prompt to push a key to the KeyStore when generated\n  - Refuse to push an unsigned container unless overridden with\n    `--allow-unauthenticated/-U` option\n  - Warn and prompt when pulling an unsigned container without the\n       `--allow-unauthenticated/-U` option\nFor more information check:\n   https://github.com/sylabs/singularity/blob/release-3.2/CHANGELOG.md\n\nUpdated to singularity v3.1.1:\n\n* New Commands\n\n  - New hidden `buildcfg` command to display compile-time parameters \n  - Added support for `LDFLAGS`, `CFLAGS`, `CGO_` variables in build system\n  - Added `--nocolor` flag to Singularity client to disable color in logging\n\n* Removed Commands\n\n  - `singularity capability \u003cadd/drop\u003e --desc` has been removed\n  - `singularity capability list \u003c--all/--group/--user\u003e` flags have all\n    been removed \n\n* New features / functionalities\n  - The `--builder` flag to the `build` command implicitly sets `--remote`\n  - Repeated binds no longer cause Singularity to exit and fail, just warn\n    instead\n  - Corrected typos and improved docstrings throughout\n  - Removed warning when CWD does not exist on the host system\n  - Added support to spec file for RPM building on SLES 11\n\nUpdate to singularity 3.1.0 what is reimplementaion in go\nso this is a complete new build and just reusing the changelog\nentries, following build differences were made to the upstream\nspec file\n\n* build position independent executable\n* build stripped executable\n\n- Change from /var/singularity to /var/lib/singularity\n- Fix warning on bash-completion file about non-executible script.\n\n- Add bash completions directory to file list for suse_version \u003c 1500\n  to keep the build checker happy.\n","status":"published","published":"2019-10-07T15:31:24Z","modified":"2026-02-04T03:27:27.537959Z","updated_at":"2026-11-02T16:58:30.784344Z"},{"id":"openSUSE-SU-2020:1037-1","title":"Security update for singularity","description":"This update for singularity fixes the following issues:\n\n- New version 3.6.0. This version introduces a new signature format \nfor SIF images, and changes to the signing / verification code to address\nthe following security problems:\n  - CVE-2020-13845, boo#1174150\n  In Singularity 3.x versions below 3.6.0, issues allow the ECL to \n  be bypassed by a malicious user.\n  - CVE-2020-13846, boo#1174148\n  In Singularity 3.5 the --all / -a option to singularity verify \n  returns success even when some objects in a SIF container are not signed, \n  or cannot be verified.\n  - CVE-2020-13847, boo#1174152\n  In Singularity 3.x versions below 3.6.0, Singularity's sign and verify \n  commands do not sign metadata found in the global header or data object \n  descriptors of a SIF file, allowing an attacker to cause unexpected \n  behavior. A signed container may verify successfully, even when it has \n  been modified in ways that could be exploited to cause malicious behavior.\n\n- New features / functionalities\n  - A new '--legacy-insecure' flag to verify allows verification of SIF\n  signatures in the old, insecure format.\n  - A new '-l / --logs' flag for instance list that shows the paths \n  to instance STDERR / STDOUT log files.\n  - The --json output of instance list now include paths to \n  STDERR / STDOUT log files.\n  - Singularity now supports the execution of minimal Docker/OCI\n  containers that do not contain /bin/sh, e.g. docker://hello-world.\n  - A new cache structure is used that is concurrency safe on a filesystem that\n  supports atomic rename. If you downgrade to Singularity 3.5 or older after\n  using 3.6 you will need to run singularity cache clean.\n  - A plugin system rework adds new hook points that will allow the\n  development of plugins that modify behavior of the runtime. An image driver\n  concept is introduced for plugins to support new ways of handling image and\n  overlay mounts. Plugins built for \u003c=3.5 are not compatible with 3.6.\n  - The --bind flag can now bind directories from a SIF or ext3 image into a\n  container.\n  - The --fusemount feature to mount filesystems to a container via FUSE\n  drivers is now a supported feature (previously an experimental hidden flag).\n  - This permits users to mount e.g. sshfs and cvmfs filesystems to the\n  container at runtime.\n  - A new -c/--config flag allows an alternative singularity.conf to be\n  specified by the root user, or all users in an unprivileged installation.\n  - A new --env flag allows container environment variables to be set via the\n  Singularity command line.\n  - A new --env-file flag allows container environment variables to be set from\n  a specified file.\n  - A new --days flag for cache clean allows removal of items older than a\n  specified number of days. Replaces the --name flag which is not generally\n  useful as the cache entries are stored by hash, not a friendly name.\n\n- Changed defaults / behaviours\n - New signature format (see security fixes above).\n - Fixed spacing of singularity instance list to be dynamically changing \n based off of input lengths instead of fixed number of spaces to account\n for long instance names.\n - Environment variables prefixed with SINGULARITYENV_ always take\n precedence over variables without SINGULARITYENV_ prefix.\n - The %post build section inherits environment variables from the base image.\n - %files from ... will now follow symlinks for sources that are directly\n specified, or directly resolved from a glob pattern. It will not follow\n symlinks found through directory traversal. This mirrors Docker multi-stage\n COPY behaviour.\n - Restored the CWD mount behaviour of v2, implying that CWD path is not recreated\n inside container and any symlinks in the CWD path are not resolved anymore to\n determine the destination path inside container.\n - The %test build section is executed the same manner as singularity test image.\n --fusemount with the container: default directive will foreground the FUSE\n process. Use container-daemon: for previous behavior.\n\n- Deprecate -a / --all option to sign/verify as new signature behavior \n  makes this the default.\n- For more information about upstream changes, please check:\n  https://github.com/hpcng/singularity/blob/master/CHANGELOG.md\n- Removed --name flag for cache clean; replaced with --days.\n","status":"published","published":"2020-07-23T04:22:25Z","modified":"2026-02-04T03:08:23.840117Z","updated_at":"2026-11-02T16:58:31.517538Z"},{"id":"openSUSE-SU-2024:11384-1","title":"singularity-3.8.3-1.2 on GA media","description":"These are all security issues fixed in the singularity-3.8.3-1.2 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-06-15T00:00:00Z","modified":"2026-02-04T02:36:28.928556Z","updated_at":"2026-11-02T16:58:35.195147Z"}]}}
