Every CVE Search/ Get API key

CVE-2017-15566

Insecure SPANK environment variable handling exists in SchedMD Slurm before 16.05.11, 17.x before...

7.8 HighFix available

Insecure SPANK environment variable handling exists in SchedMD Slurm before 16.05.11, 17.x before 17.02.9, and 17.11.x before 17.11.0rc2, allowing privilege escalation to root during Prolog or Epilog execution.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

0.58%Down 0.9 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 7.8

Insecure SPANK environment variable handling exists in SchedMD Slurm before 16.05.11, 17.x before 17.02.9, and 17.11.x before 17.11.0rc2, allowing privilege escalation to root during Prolog or Epilog execution.

Record
CVE-2017-15566
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS 2.0
7.2 HighAV:L/AC:L/Au:N/C:C/I:C/A:C
Weakness
CWE-426
Updated
2026-11-02
CVE List No score

Insecure SPANK environment variable handling exists in SchedMD Slurm before 16.05.11, 17.x before 17.02.9, and 17.11.x before 17.11.0rc2, allowing privilege escalation to root during Prolog or Epilog execution.

Record
CVE-2017-15566
Updated
2026-11-02
EUVDEUVD-2017-7018 No score

Insecure SPANK environment variable handling exists in SchedMD Slurm before 16.05.11, 17.x before 17.02.9, and 17.11.x before 17.11.0rc2, allowing privilege escalation to root during Prolog or Epilog execution.

Record
EUVD-2017-7018
Updated
2026-11-03
GitHub AdvisoriesGHSA-h3p2-v728-89g5 7.8

Insecure SPANK environment variable handling exists in SchedMD Slurm before 16.05.11, 17.x before...

Insecure SPANK environment variable handling exists in SchedMD Slurm before 16.05.11, 17.x before 17.02.9, and 17.11.x before 17.11.0rc2, allowing privilege escalation to root during Prolog or Epilog execution.

Record
GHSA-h3p2-v728-89g5
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-426
Updated
2026-11-02
OSV 7.8

Insecure SPANK environment variable handling exists in SchedMD Slurm before 16.05.11, 17.x before 17.02.9, and 17.11.x before 17.11.0rc2, allowing privilege escalation to root during Prolog or Epilog execution.

Record
CVE-2017-15566
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2017-15566 7.8

Insecure SPANK environment variable handling exists in SchedMD Slurm before 16.05.11, 17.x before 17.02.9, and 17.11.x before 17.11.0rc2, allowing privilege escalation to root during Prolog or Epilog execution.

Record
UBUNTU-CVE-2017-15566
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
Show 7 moreShow less
OSVopenSUSE-SU-2024:11389-1 No score

libnss_slurm2-21.08.1-1.1 on GA media

These are all security issues fixed in the libnss_slurm2-21.08.1-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11389-1
Updated
2026-11-02
OSVSUSE-SU-2017:3311-1 No score

Security update for slurm

This update for slurm fixes the following issues:

Slurm was updated to 17.02.9 to fix a security bug, bringing new features and bugfixes (fate#323998 bsc#1067580).

Security issue fixed:

  • CVE-2017-15566: Fix security issue in Prolog and Epilog by always prepending SPANK_ to all user-set environment variables. (bsc#1065697)

Changes in 17.02.9:

  • When resuming powered down nodes, mark DOWN nodes right after ResumeTimeout has been reached (previous logic would wait about one minute longer).
  • Fix sreport not showing full column name for TRES Count.
  • Fix slurmdb_reservations_get() giving wrong usage data when job's spanned reservation that was modified.
  • Fix sreport reservation utilization report showing bad data.
  • Show all TRES' on a reservation in sreport reservation utilization report by default.
  • Fix sacctmgr show reservation handling 'end' parameter.
  • Work around issue with sysmacros.h and gcc7 / glibc 2.25.
  • Fix layouts code to only allow setting a boolean.
  • Fix sbatch --wait to keep waiting even if a message timeout occurs.
  • CRAY - If configured with NodeFeatures=knl_cray and there are non-KNL nodes which include no features the slurmctld will abort without this patch when attemping strtok_r(NULL).
  • Fix regression in 17.02.7 which would run the spank_task_privileged as part of the slurmstepd instead of it's child process.

Changes in 17.02.8:

  • Add 'slurmdbd:' to the accounting plugin to notify message is from dbd instead of local.
  • mpi/mvapich - Buffer being only partially cleared. No failures observed.
  • Fix for job --switch option on dragonfly network.
  • In salloc with --uid option, drop supplementary groups before changing UID.
  • jobcomp/elasticsearch - strip any trailing slashes from JobCompLoc.
  • jobcomp/elasticsearch - fix memory leak when transferring generated buffer.
  • Prevent slurmstepd ABRT when parsing gres.conf CPUs.
  • Fix sbatch --signal to signal all MPI ranks in a step instead of just those on node 0.
  • Check multiple partition limits when scheduling a job that were previously only checked on submit.
  • Cray: Avoid running application/step Node Health Check on the external job step.
  • Optimization enhancements for partition based job preemption.
  • Address some build warnings from GCC 7.1, and one possible memory leak if /proc is inaccessible.
  • If creating/altering a core based reservation with scontrol/sview on a remote cluster correctly determine the select type.
  • Fix autoconf test for libcurl when clang is used.
  • Fix default location for cgroup_allowed_devices_file.conf to use correct default path.
  • Document NewName option to sacctmgr.
  • Reject a second PMI2_Init call within a single step to prevent slurmstepd from hanging.
  • Handle old 32bit values stored in the database for requested memory correctly in sacct.
  • Fix memory leaks in the task/cgroup plugin when constraining devices.
  • Make extremely verbose info messages debug2 messages in the task/cgroup plugin when constraining devices.
  • Fix issue that would deny the stepd access to /dev/null where GRES has a 'type' but no file defined.
  • Fix issue where the slurmstepd would fatal on job launch if you have no gres listed in your slurm.conf but some in gres.conf.
  • Fix validating time spec to correctly validate various time formats.
  • Make scontrol work correctly with job update timelimit [+|-]=.
  • Reduce the visibily of a number of warnings in _part_access_check.
  • Prevent segfault in sacctmgr if no association name is specified for an update command.
  • burst_buffer/cray plugin modified to work with changes in Cray UP05 software release.
  • Fix job reasons for jobs that are violating assoc MaxTRESPerNode limits.
  • Fix segfault when unpacking a 16.05 slurm_cred in a 17.02 daemon.
  • Fix setting TRES limits with…
Record
SUSE-SU-2017:3311-1
Updated
2026-11-02
OSVSUSE-SU-2020:0434-1 No score

Security update for pdsh, slurm_18_08

This update for pdsh, slurm_18_08 fixes the following issues:

Slurm was included in the 18.08 release, as 'slurm_18_08' package. The version 18.08.9 contains all recent security fixes, including:

  • CVE-2019-19728: Fixed a privilege escalation with srun, where --uid might have unintended side effects (bsc#1159692).
  • CVE-2019-19727: Fixed permissions of slurmdbd.conf (bsc#1155784).

pdsh was updated to:

  • Add support for an alternative SLURM version when building the slurm plugin.
Record
SUSE-SU-2020:0434-1
Updated
2026-11-02
OSVSUSE-SU-2020:0443-1 No score

Security update for pdsh, slurm_18_08

This update for pdsh, slurm_18_08 fixes the following issues:

Slurm was included in the 18.08 release, as 'slurm_18_08' package. The version 18.08.9 contains all recent security fixes, including:

  • CVE-2019-19728: Fixed a privilege escalation with srun, where --uid might have unintended side effects (bsc#1159692).
  • CVE-2019-19727: Fixed permissions of slurmdbd.conf (bsc#1155784).

pdsh was updated to:

  • Add support for an alternative SLURM version when building the slurm plugin.
Record
SUSE-SU-2020:0443-1
Updated
2026-11-02
OSVSUSE-SU-2020:2607-1 No score

Security update for pdsh, slurm_20_02

This update for pdsh, slurm_20_02 fixes the following issues:

Changes in slurm_20_02:

  • Add support for openPMIx also for Leap/SLE 15.0/1 (bsc#1173805).

  • Do not run %check on SLE-12-SP2: Some incompatibility in tcl makes this fail.

  • Remove unneeded build dependency to postgresql-devel.

  • Disable build on s390 (requires 64bit).

  • Bring QA to the package build: add %%check stage.

  • Remove cruft that isn't needed any longer.

  • Add 'ghosted' run-file.

  • Add rpmlint filter to handle issues with library packages for Leap and enterprise upgrade versions.

  • Updated to 20.02.3 which fixes CVE-2020-12693 (bsc#1172004).

  • Other changes are:

  • Factor in ntasks-per-core=1 with cons_tres.
  • Fix formatting in error message in cons_tres.
  • Fix calling stat on a NULL variable.
  • Fix minor memory leak when using reservations with flags=first_cores.
  • Fix gpu bind issue when CPUs=Cores and ThreadsPerCore > 1 on a node.
  • Fix --mem-per-gpu for heterogenous --gres requests.
  • Fix slurmctld load order in load_all_part_state().
  • Fix race condition not finding jobacct gather task cgroup entry.
  • Suppress error message when selecting nodes on disjoint topologies.
  • Improve performance of _pack_default_job_details() with large number of job
  • arguments.
  • Fix archive loading previous to 17.11 jobs per-node req_mem.
  • Fix regresion validating that --gpus-per-socket requires --sockets-per-node
  • for steps. Should only validate allocation requests.
  • error() instead of fatal() when parsing an invalid hostlist.
  • nss_slurm - fix potential deadlock in slurmstepd on overloaded systems.
  • cons_tres - fix --gres-flags=enforce-binding and related --cpus-per-gres.
  • cons_tres - Allocate lowest numbered cores when filtering cores with gres.
  • Fix getting system counts for named GRES/TRES.
  • MySQL - Fix for handing typed GRES for association rollups.
  • Fix step allocations when tasks_per_core > 1.
  • Fix allocating more GRES than requested when asking for multiple GRES types.
  • Treat libnss_slurm like any other package: add version string to upgrade package.

  • Updated to 20.02.1 with following changes'

  • Improve job state reason for jobs hitting partition_job_depth.
  • Speed up testing of singleton dependencies.
  • Fix negative loop bound in cons_tres.
  • srun - capture the MPI plugin return code from mpi_hook_client_fini() and use as final return code for step failure.
  • Fix segfault in cli_filter/lua.
  • Fix --gpu-bind=map_gpu reusability if tasks > elements.
  • Make sure config_flags on a gres are sent to the slurmctld on node registration.
  • Prolog/Epilog - Fix missing GPU information.
  • Fix segfault when using config parser for expanded lines.
  • Fix bit overlap test function.
  • Don't accrue time if job begin time is in the future.
  • Remove accrue time when updating a job start/eligible time to the future.
  • Fix regression in 20.02.0 that broke --depend=expand.
  • Reset begin time on job release if it's not in the future.
  • Fix for recovering burst buffers when using high-availability.
  • Fix invalid read due to freeing an incorrectly allocated env array.
  • Update slurmctld -i message to warn about losing data.
  • Fix scontrol cancel_reboot so it clears the DRAIN flag and node reason for a pending ASAP reboot.

Changes in pdsh:

  • Bring QA to the package build: add %%check stage

  • Since the build for the SLE-12 HPC Module got fixed, simplify spec file and remove legacy workarounds.

  • Remove _multibuild file where not needed.

Record
SUSE-SU-2020:2607-1
Updated
2026-11-02
OSVSUSE-SU-2021:0773-1 No score

Security update for slurm_20_11 and pdsh

This update for pdsh fixes the following issues:

  • Preparing pdsh for Slurm 20.11 (jsc#ECO-2412)

  • Simplify convoluted condition.

    This update for slurm fixes the following issues:

  • Fix potential buffer overflows from use of unpackmem(). CVE-2020-27745 (bsc#1178890)

  • Fix potential leak of the magic cookie when sent as an argument to the xauth command. CVE-2020-27746 (bsc#1178891)

  • Add support for openPMIx also for Leap/SLE 15.0/1 (bsc#1173805).

  • Updated to 20.02.3 which fixes CVE-2020-12693 (bsc#1172004).

  • slurm-plugins will now also require pmix not only libpmix (bsc#1164326)

  • Removed autopatch as it doesn't work for the SLE-11-SP4 build.

  • Disable %arm builds as this is no longer supported.

  • pmix searches now also for libpmix.so.2 so that there is no dependency for devel package (bsc#1164386)

  • Update to version 20.02.0 (jsc#SLE-8491)

    • Fix minor memory leak in slurmd on reconfig.
    • Fix invalid ptr reference when rolling up data in the database.
    • Change shtml2html.py to require python3 for RHEL8 support, and match man2html.py.
    • slurm.spec - override 'hardening' linker flags to ensure RHEL8 builds in a usable manner.
    • Fix type mismatches in the perl API.
    • Prevent use of uninitialized slurmctld_diag_stats.
    • Fixed various Coverity issues.
    • Only show warning about root-less topology in daemons.
    • Fix accounting of jobs in IGNORE_JOBS reservations.
    • Fix issue with batch steps state not loading correctly when upgrading from 19.05.
    • Deprecate max_depend_depth in SchedulerParameters and move it to DependencyParameters.
    • Silence erroneous error on slurmctld upgrade when loading federation state.
    • Break infinite loop in cons_tres dealing with incorrect tasks per tres request resulting in slurmctld hang.
    • Improve handling of --gpus-per-task to make sure appropriate number of GPUs is assigned to job.
    • Fix seg fault on cons_res when requesting --spread-job.
  • Move to python3 for everything but SLE-11-SP4

    • For SLE-11-SP4 add a workaround to handle a python3 script (python2.7 compliant).

    • sbatch - fix segfault when no newline at the end of a burst buffer file.

    • Change scancel to only check job's base state when matching -t options.

    • Save job dependency list in state files.

    • cons_tres - allow jobs to be run on systems with root-less topologies.

    • Restore pre-20.02pre1 PrologSlurmctld synchonization behavior to avoid various race conditions, and ensure proper batch job launch.

    • Add new slurmrestd command/daemon which implements the Slurm REST API.

  • standard slurm.conf uses now also SlurmctldHost on all build targets (bsc#1162377)

  • start slurmdbd after mariadb (bsc#1161716)

  • Update to version 19.05.5 (jsc#SLE-8491)

    • Includes security fixes CVE-2019-19727, CVE-2019-19728, CVE-2019-12838.
    • Disable i586 builds as this is no longer supported.
    • Create libnss_slurm package to support user and group resolution thru slurmstepd.
  • Update to v18.08.9 for fixing CVE-2019-19728 (bsc#1159692).

    • Make Slurm compile on linux after sys/sysctl.h was deprecated.
    • Install slurmdbd.conf.example with 0600 permissions to encourage secure use. CVE-2019-19727.
    • srun - do not continue with job launch if --uid fails. CVE-2019-19728.
  • added pmix support jsc#SLE-10800

  • Use --with-shared-libslurm to build slurm binaries using libslurm.

  • Make libslurm depend on slurm-config.

  • Fix ownership of /var/spool/slurm on new installations and upgrade (bsc#1158696).

  • Fix permissions of slurmdbd.conf (bsc#1155784, CVE-2019-19727).

  • Fix %posttrans macro _res_update to cope with added newline (bsc#1153259).

  • Add package slurm-webdoc which sets up a web server to provide the documentation for the version shipped.

  • Move srun from 'slurm' to 'slurm-node': srun is required on the nodes as well so sbatch will work. 'slurm-node' is a requirement when 'slurm' is installed (bsc#1153095).

  • Updated to 18.08.8 for fixing (CVE-2019-12838, bsc#1140709,…

Record
SUSE-SU-2021:0773-1
Updated
2026-11-02
OSVUSN-4781-1 No score

slurm-llnl vulnerabilities

It was discovered that Slurm incorrectly handled certain messages between the daemon and the user. An attacker could possibly use this issue to assume control of an arbitrary file on the system. This issue only affected Ubuntu 16.04 ESM. (CVE-2016-10030)

It was discovered that Slurm mishandled SPANK environment variables. An attacker could possibly use this issue to gain elevated privileges. This issue only affected Ubuntu 16.04 ESM. (CVE-2017-15566)

It was discovered that Slurm mishandled certain SQL queries. A local attacker could use this issue to gain elevated privileges. This issue only affected Ubuntu 14.04 ESM, Ubuntu 16.04 ESM and Ubuntu 18.04 ESM. (CVE-2018-7033)

It was discovered that Slurm mishandled user names and group ids. A local attacker could use this issue to gain administrative privileges. This issue only affected Ubuntu 14.04 ESM and Ubuntu 18.04 ESM. (CVE-2018-10995)

It was discovered that Slurm mishandled 23-bit systems. A local attacker could use this to gain administrative privileges. This issue only affected Ubuntu 14.04 ESM, Ubuntu 16.04 ESM and Ubuntu 18.04 ESM. (CVE-2019-6438)

It was discovered that Slurm incorrectly handled certain inputs when Message Aggregation is enabled. An attacker could possibly use this issue to launch a process as an arbitrary user. This issue only affected Ubuntu 16.04 ESM, Ubuntu 18.04 ESM and Ubuntu 20.04 ESM. (CVE-2020-12693)

It was discovered that Slurm incorrectly handled certain RPC inputs. An attacker could possibly use this issue to execute arbitrary code. This issue only affected Ubuntu 18.04 ESM and Ubuntu 20.04 ESM. (CVE-2020-27745)

Jonas Stare discovered that Slurm exposes sensitive information related to the X protocol. An attacker could possibly use this issue to obtain a graphical session from an arbitrary user. This issue only affected Ubuntu 18.04 ESM and Ubuntu 20.04 ESM. (CVE-2020-27746)

It was discovered that Slurm incorrectly handled environment parameters. An attacker could possibly use this issue to execute arbitrary code. (CVE-2021-31215)

Record
USN-4781-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
slurm-llnl
Debian:9
before 16.05.9-1+deb9u1, plus listed versions
16.05.9-1
16.05.9-1+deb9u1
pdsh
SUSE:Linux Enterprise Module for HPC 12
before 2.33-7.5.17
2.33-7.5.17
slurm
SUSE:Linux Enterprise Module for HPC 12
before 17.02.9-6.10.1
17.02.9-6.10.1
slurmlibs
SUSE:Linux Enterprise Module for HPC 12
before 16.05.8.1-6.1
16.05.8.1-6.1
pdsh
SUSE:Linux Enterprise Module for HPC 12
From an advisory covering 8 CVEs
before 2.33-7.18.1
2.33-7.18.1
slurm_18_08
SUSE:Linux Enterprise Module for HPC 12
From an advisory covering 8 CVEs
before 18.08.9-3.5.1
18.08.9-3.5.1
pdsh
SUSE:Linux Enterprise Module for HPC 15
From an advisory covering 8 CVEs
before 2.33-7.6.1
2.33-7.6.1
slurm_18_08
SUSE:Linux Enterprise Module for HPC 15
From an advisory covering 8 CVEs
before 18.08.9-1.5.2
18.08.9-1.5.2
pdsh
SUSE:Linux Enterprise Module for HPC 15 SP1
From an advisory covering 8 CVEs
before 2.33-7.6.1
2.33-7.6.1
pdsh_slurm_18_08
SUSE:Linux Enterprise Module for HPC 12
From an advisory covering 9 CVEs
before 2.34-7.26.2
2.34-7.26.2
Show 13 moreShow less
Affected packages
PackageAffectedFixed
pdsh_slurm_20_02
SUSE:Linux Enterprise Module for HPC 12
From an advisory covering 9 CVEs
before 2.34-7.26.2
2.34-7.26.2
slurm_20_02
SUSE:Linux Enterprise Module for HPC 12
From an advisory covering 9 CVEs
before 20.02.3-3.5.1
20.02.3-3.5.1
pdsh
SUSE:Linux Enterprise Module for HPC 12
From an advisory covering 11 CVEs
before 2.34-7.32.1
2.34-7.32.1
pdsh_slurm_18_08
SUSE:Linux Enterprise Module for HPC 12
From an advisory covering 11 CVEs
before 2.34-7.32.1
2.34-7.32.1
pdsh_slurm_20_02
SUSE:Linux Enterprise Module for HPC 12
From an advisory covering 11 CVEs
before 2.34-7.32.1
2.34-7.32.1
pdsh_slurm_20_11
SUSE:Linux Enterprise Module for HPC 12
From an advisory covering 11 CVEs
before 2.34-7.32.1
2.34-7.32.1
slurm_20_11
SUSE:Linux Enterprise Module for HPC 12
From an advisory covering 11 CVEs
before 20.11.4-3.5.1
20.11.4-3.5.1
slurm-llnl
Ubuntu:Pro:16.04:LTS
before 15.08.7-1ubuntu0.1~esm3, plus listed versions
14.11.8-415.08.4-1build115.08.4-1build215.08.7-115.08.7-1build1
15.08.7-1ubuntu0.1~esm3
slurm-llnl
Ubuntu:Pro:14.04:LTS
From an advisory covering 9 CVEs
before 2.6.5-1ubuntu0.1~esm5, plus listed versions
2.5.7-12.5.7-1build12.6.4-1ubuntu12.6.5-12.6.5-1ubuntu0.1~esm4
2.6.5-1ubuntu0.1~esm5
slurm-llnl
Ubuntu:Pro:16.04:LTS
From an advisory covering 9 CVEs
before 15.08.7-1ubuntu0.1~esm4, plus listed versions
14.11.8-415.08.4-1build115.08.4-1build215.08.7-115.08.7-1build115.08.7-1ubuntu0.1~esm3
15.08.7-1ubuntu0.1~esm4
slurm-llnl
Ubuntu:Pro:18.04:LTS
From an advisory covering 9 CVEs
before 17.11.2-1ubuntu0.1~esm4, plus listed versions
17.02.6-1build117.02.9-117.11.2-1build117.11.2-1ubuntu0.1~esm3
17.11.2-1ubuntu0.1~esm4
slurm-llnl
Ubuntu:Pro:20.04:LTS
From an advisory covering 9 CVEs
before 19.05.5-1ubuntu0.1~esm1, plus listed versions
19.05.3.2-219.05.3.2-2build119.05.5-1
19.05.5-1ubuntu0.1~esm1
slurm
openSUSE:Tumbleweed
From an advisory covering 12 CVEs
before 21.08.1-1.1
21.08.1-1.1

History

History
RecordedChangedSources
affected, facts
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2017-15566 is a high vulnerability (CVSS 7.8) in Schedmd Slurm, published November 1, 2017. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.58%, the 47th percentile. Fixed in slurm-llnl 16.05.9-1+deb9u1.

References

Show 64 moreShow less
This page doesn't list everything

Left out here: the rest of 2 source descriptions. The JSON record has them.

MoveEnter Open