CVE-2025-32955: Harden-Runner Privilege Escalation via Docker Evasion

step-security/harden-runner Updated 02 Oct 2025

Summary

22/04/2025
Yes i
Moderate
6.0

CVE-2025-32955: Harden-Runner allows evasion of 'disable-sudo' policy. Affects step-security/harden-runner versions >= 0.12.0, < 2.12.0. Fixed in 2.12.0. How to fix ↓

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

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

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

Harden-Runner is a security-focused GitHub Actions runner designed to enhance the security of CI/CD pipelines by enforcing strict policies. One of its key features is the 'disable-sudo' policy, which aims to prevent the runner user from executing commands with elevated privileges. However, this package is vulnerable to a privilege escalation attack due to its reliance on Docker, which can be exploited by users with malicious intent.

Vulnerability Detail

The vulnerability arises from the 'disable-sudo' policy in Harden-Runner, which is intended to restrict the runner user from using sudo by removing them from the sudoers file. However, since the runner user is part of the docker group, they can interact with the Docker daemon to launch privileged containers or access the host filesystem. This allows an attacker, who can execute malicious code on the runner, to regain root access or modify the sudoers file, effectively bypassing the intended security measures. The vulnerability has been identified as having a CVSS score of 6.0, indicating a moderate severity level.

How To Fix

Minimum fixed version

2.12.0

This is the first release that contains the fix.

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

Workaround

As a temporary workaround, users can migrate to the 'disable-sudo-and-containers' policy, which not only disables sudo access but also removes access to Docker sockets and uninstalls Docker from the runner. This can be configured in the Harden-Runner settings to prevent any container-based privilege escalation paths.

Conclusion

The Harden-Runner vulnerability CVE-2025-32955 allows for privilege escalation through Docker evasion, impacting users who rely on the 'disable-sudo' policy. It is crucial for users to update to version 2.12.0 or later and consider implementing additional security measures to protect their CI/CD environments.

See every vulnerability recorded for step-security/harden-runner →

Share this vulnerability

FAQ

An attacker can escalate privileges to root on a runner configured with 'disable-sudo: true' by exploiting Docker, thereby bypassing security controls.

You can use Vulert's playground at Vulert Scanner to check if your application is affected by this vulnerability without needing to sign up.

Consider implementing the 'disable-sudo-and-containers' policy as a temporary workaround to mitigate the risk of privilege escalation.

No, this issue specifically affects configurations using 'disable-sudo: true' on GitHub-hosted runners or ephemeral self-hosted VM-based runners, but not Kubernetes-based Actions Runner Controller.

Yes, the 'disable-sudo' option will be deprecated as it does not sufficiently restrict privilege escalation on its own.

Related vulnerabilities

Recent vulnerabilities recorded for step-security/harden-runner.

How To Fix

Minimum fixed version

2.12.0

This is the first release that contains the fix.

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