Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify act process and artifact backend IP:port on local network
-
DeliveryCompute forged HMAC using hardcoded key 0xbadbee f0
-
ExploitSend unauthenticated ListArtifacts RPC with arbitrary run ID
-
ExecutionRetrieve signed URL via GetSignedArtifactURL
-
PersistDownload or overwrite victim job's artifact
-
ImpactExfiltrate embedded secrets or inject malicious build output
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The artifact backend is only started when the workflow being executed by act includes a step that invokes actions/upload-artifact@v4 or actions/download-artifact@v4 - workflows that do not use these specific actions are not exposed. The --artifact-server-addr flag must retain its default value (the host's outbound IP rather than 127.0.0.1); if an operator explicitly overrides it to loopback, network-adjacent exploitation is prevented. At least one concurrent job must be active using the artifact backend for a meaningful cross-job artifact theft scenario, though single-job scenarios still expose that job's own artifacts to network attackers. Limiting factors: AV:A constrains exploitation to attackers on the same L2 network segment or the same host - arbitrary internet-based attackers cannot reach the backend directly. The backend is ephemeral and only active during the artifact upload or download operation, creating a narrow time window. There is no authentication mechanism to bypass beyond the broken HMAC; no special user privileges, application roles, or prior access to act configuration are required once network reach is established. |
| Impact | The CVSS 4.0 score of 8.7 with vector AV:A/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H is well-calibrated: the AV:A (Adjacent) metric is the primary limiting factor, meaning exploitation requires the attacker to be on the same local network segment or the same host as the act process. In developer workstation or shared CI/CD environments - the primary deployment context for act - adjacency is a realistic attacker position: co-located containers, shared build agents, or other processes on a developer machine all qualify. The AC:L and PR:N metrics reflect that once reachable, exploitation requires no special conditions or credentials because both the authorization check and the HMAC have been rendered ineffective by the defects described. No EPSS score was provided in the available intelligence, and the vulnerability is not listed in the CISA KEV catalog at time of analysis. However, the exploitable conditions are self-evident from reading the public source at v0.2.89, and the hardcoded HMAC key is a known constant - effectively making the signed-URL scheme equivalent to no authentication. The threat is most acute in shared CI environments where multiple workflows run concurrently using artifact actions: an attacker in the same build environment can inject malicious binaries, steal secrets exfiltrated to artifacts, or corrupt build outputs before they are consumed by subsequent steps. |
| Exploit ScenarioDerived | An attacker on the same local network or host as a developer or CI agent running act waits for a job that invokes actions/upload-artifact@v4 to begin, identifies the artifact backend's address from the act process's bound outbound interface, and forges a valid HMAC signature for a ListArtifacts RPC by computing the 4-byte hardcoded key (0xba 0xdb 0xee 0xf0) over the known concatenation scheme. The attacker calls GetSignedArtifactURL with an arbitrary workflow_run_backend_id to retrieve a signed URL for the victim job's artifacts containing deployment tokens or compiled binaries, exfiltrates the secrets, and optionally calls CreateArtifact or FinalizeArtifact to replace the artifact with a malicious payload before the owning job downloads it. No proof-of-concept code has been identified in the available intelligence, but the HMAC key and the commented-out authorization check are directly readable in the public source repository. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 24, 2026
Unauthenticated artifact manipulation in nektos/act's Artifacts V4 backend allows any network-adjacent attacker to read, overwrite, or delete the build artifacts of concurrently running jobs, including embedded secrets and deployment credentials. Two compounding root-cause defects drive the severity: a run-ID ownership check that is explicitly commented out in validateRunIDV4 (pkg/artifacts/artifacts_v4.go), and a universally forgeable HMAC whose key is a hardcoded 4-byte constant (0xba 0xdb 0xee 0xf0) shared across every build with a delimiter-free concatenation scheme vulnerable to hash ambiguity. No public exploit has been identified at time of analysis and the vulnerability is not listed in CISA KEV, but the exploitable code paths are visible in public source and trivially reproducible.
RemediationAI
No vendor-released patched version has been independently confirmed from the available reference data - the GitHub repository (https://github.com/nektos/act) and VulnCheck advisory (https://www.vulncheck.com/advisories/act-through-missing-authorization-in-the-artifacts-v4-backend) should be monitored for a patched release. As an immediate compensating control, pass --artifact-server-addr=127.0.0.1:<port> when invoking act; this binds the backend to loopback only, preventing network-adjacent access, though it will break any multi-container or remote-runner setup that requires the artifact server to be reachable from other hosts. Avoid using actions/upload-artifact@v4 or actions/download-artifact@v4 in act workflows until patched, since the backend is only started when those actions are invoked - workflows using earlier artifact action versions or no artifact actions are not affected. In shared CI environments or on multi-tenant build hosts, treat all artifact contents produced by act as potentially compromised until a fix is applied, particularly build outputs that contain secrets, tokens, or deployment credentials.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
nektos/act is a tool that runs GitHub Actions workflows locally by emulating the GitHub Actions runner environment. When a workflow invokes actions/upload-artifact@v4 or actions/download-artifact@v4, act spawns an HTTP Artifacts V4 backend implementing control-plane RPCs: CreateArtifact, GetSignedArtifactURL, ListArtifacts, FinalizeArtifact, and DeleteArtifact. The root cause class is CWE-862 (Missing Authorization): the function validateRunIDV4 in pkg/artifacts/artifacts_v4.go parses the caller-supplied workflow_run_backend_id value but the comparison that would verify it matches the requesting task's run ID is commented out, meaning any caller can claim any run ID. The HMAC signing mechanism that protects issued URLs compounds this: the secret key is a literal 4-byte constant (0xba 0xdb 0xee 0xf0) identical in every build, and the signed payload concatenates endpoint, expiry, artifact name, and task ID without length prefixes or delimiters, creating hash-length extension and ambiguity conditions where signatures for one (name, taskID) pair are valid for a different pair with equivalent concatenated bytes. A third structural defect is that the --artifact-server-addr flag defaults to the host's outbound IP rather than loopback (127.0.0.1), so the backend is reachable across the local network without any extra configuration. CPE cpe:2.3:a:nektos:act:*:*:*:*:*:*:*:* indicates all versions are potentially affected as enumerated by VulnCheck.
Know when Act gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:A/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
AV:A because default binding exposes backend to local network only; PR:N because authorization check is entirely absent; full C/I/A impact on artifact data.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
act starts an HTTP Artifacts V4 backend whenever a workflow uses actions/upload-artifact@v4 or actions/download-artifact@v4. The control-plane RPCs of that backend, including CreateArtifact, GetSignedArtifactURL, ListArtifacts, FinalizeArtifact and DeleteArtifact, accept a caller-supplied workflow_run_backend_id and never check that it belongs to the requester: validateRunIDV4 in pkg/artifacts/artifacts_v4.go parses the value and returns it with the comparison against the requesting task's run ID left commented out. The signed URLs the backend issues are authenticated by an HMAC whose key is hardcoded to the four bytes 0xba 0xdb 0xee 0xf0, identical in every build, computed over a concatenation of endpoint, expiry, artifact name and task ID with no length prefix or delimiter, so signatures are both forgeable and ambiguous between differing artifact name and task ID pairs. The --artifact-server-addr flag defaults to the host's outbound address rather than loopback, leaving the backend reachable from the surrounding network. Any client that can reach it may read, overwrite or delete the artifacts of a concurrently running job with no credentials, exposing build outputs such as secrets and deployment credentials and permitting their replacement before the owning job consumes them.
Executive ViewAI
nektos/act's Artifacts V4 backend contains an authentication bypass allowing network-adjacent attackers to read, overwrite, or delete build artifacts from concurrent jobs without credentials. Organizations using this CI/CD tool risk exposure of embedded secrets, deployment credentials, and sensitive artifacts to unauthorized access, potentially enabling lateral movement and supply-chain compromise through artifact manipulation.
No vendor-released patch identified at time of analysis. Interim mitigations: implement network-layer access controls restricting artifact backend connectivity; disable concurrent job execution; enable audit logging on artifact read/write/delete operations; initiate credential rotation for all secrets embedded in build artifacts; consider temporary suspension of CI/CD workflows until network controls are validated.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
EUVD-2026-64852
GHSA-crfw-6q9f-w49f
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB