Skip to main content

@zuke/gh EUVDEUVD-2026-114134

| CVE-2026-119289 HIGH
Insufficient Verification of Data Authenticity (CWE-345)
2026-10-30 GitHub_M
7.1
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Hold workflow_dispatch on shared workflow repo
  2. Delivery
    Read title marker from run list
  3. Exploit
    Dispatch same workflow on attacker-controlled branch
  4. Execution
    Gate adopts substituted run's conclusion
  5. Impact
    Authorize unvalidated release or block valid one

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V15 - Secure Coding and Architecture Data authenticity verification
Exploitation Conditions

Exploitation requires a very specific set of preconditions, all drawn from the advisory: (1) a build that gates a release on @zuke/gh githubWorkflow(...) running in marker (display-title correlation) mode; (2) the dispatched workflow must live in a separate repository whose workflow_dispatch / actions:write permission is held by a party the releasing repository does not equally trust - e.g. a shared org workflow or any repo with more contributors than the one cutting the release; and (3) the attacker must dispatch the same workflow on a ref they control during the gate's wait window. Reading the marker itself needs no special access because it is echoed into a run title visible to anyone who can list the workflow's runs. Limiting factors: this does not affect single-trust-domain setups where actions:write holders are exactly the trusted releasers, does not affect the best-effort mode in the same way, and is closed by upgrading to 1.10.0; branch protection does NOT mitigate it because workflow_dispatch is not gated by branch protection. Affected versions: @zuke/gh < 1.10.0.

Impact

CVSS 3.1 base score is 7.1 (High) with vector AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:H/A:L, meaning network-reachable but high attack complexity, requiring some privilege, and a scope change - integrity (I:H) is the dominant impact with a secondary availability impact (A:L) and no confidentiality impact (C:N). There is no CISA KEV listing and no EPSS score in the provided data, so exploitation probability cannot be quantified; the status is no public exploit identified at time of analysis (the four references are the GHSA advisory, PR #542, the fix commit, and the release tag - all patch artifacts, not exploit code). The vuln.today decision label is this_week, indicating elevated but not emergency urgency, which is consistent with a high-integrity-impact flaw whose exploitation is gated behind a specific non-default trust configuration (AC:H). The real-world priority is conditional rather than universal: it is a genuine integrity threat to release pipelines only where @zuke/gh githubWorkflow(...) runs in marker mode AND the dispatched workflow lives in a repository whose workflow_dispatch permission is held by a less-trusted party. One signal conflicts with the data: the 'Information Disclosure' tag contradicts the CVSS vector (C:N) and CWE-345 - the actual impact is authenticity/integrity of the gated release, not disclosure, so that tag should be disregarded.

Exploit ScenarioDerived

An attacker who holds workflow_dispatch on a shared or multi-contributor workflow repository reads the display-title marker from that workflow's publicly visible run list, then dispatches the same workflow on a branch they control so the gate adopts the attacker's run. A passing substituted run authorizes a release whose tested code never actually ran, while deliberately failing or cancelling the run blocks a legitimate release. No public exploit code is identified; the mechanism is described in detail in the GHSA advisory, and the high attack complexity reflects the required cross-trust-domain configuration rather than a difficult trigger.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 30, 2026

Release-gate substitution in the Zuke GitHub orchestration package @zuke/gh before 1.10.0 lets a party who can dispatch the external workflow satisfy or block a release gate without the gated suite ever validating the shipped artifact. The githubWorkflow(...) gate located the run it had just dispatched purely by a display-title marker echoed into the run list, so anyone able to read that marker and dispatch the same workflow could raise a substitute run whose conclusion the gate adopted; a passing run authorizes an unvalidated release and a failed or cancelled run holds a valid release closed, and the persisted run ID keeps the substitution across build resume. Exploitation requires marker-mode use plus a separate repository whose workflow_dispatch / actions:write holders are not equally trusted by the releasing repository; no public exploit code was identified at time of analysis, and the issue is fixed in 1.10.0. CVSS 3.1 base score 7.1 (High) with integrity as the dominant impact.

RemediationAI

Vendor-released patch: upgrade @zuke/gh to 1.10.0 (release tag gh-v1.10.0), which is the only complete fix - both correlation modes then require a workflow_dispatch event, the ref named by the gate and creation inside the discovery window, and two surviving candidates now cause an explicit refusal naming both. Details are in the advisory https://github.com/zuke-build/zuke/security/advisories/GHSA-rrc8-3g8p-cm8p, PR https://github.com/zuke-build/zuke/pull/542 and commit https://github.com/zuke-build/zuke/commit/4257b0bc5ef5e387a44f913349646d4baccd1654. If upgrading is not immediately possible, the vendor's documented workarounds are to treat the gate result as advisory rather than authorizing - requiring a human approval between the gate and the release, at the cost of manual sign-off on every publish - or to dispatch only workflows in a repository whose actions:write holders are exactly the people already trusted to release, which removes the substitution path entirely but rules out shared cross-team workflows. Where a gate must authorize across a trust domain, narrow who holds actions:write on the workflow's repository, place the workflow behind an environment with required reviewers, or have the workflow check its own github.actor; these are documented in docs/orchestration.md. Note that branch protection does not mitigate this issue, because a workflow_dispatch is not gated by branch protection, and that the 1.10.0 fix still leaves an actions:write holder who can dispatch the same workflow on the same ref inside the same window indistinguishable from the legitimate run.

Affected VersionsENISA

zuke < 1.10.0

Affected Packages

euvd zuke fix: 1.10.0

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

Zuke is a code-first, strongly typed build automation system for Deno, and @zuke/gh provides GitHub Actions orchestration. Its githubWorkflow(...) helper dispatches a workflow in another repository and waits on the conclusion so a build can gate publishing on a test suite that lives elsewhere. The vulnerable correlation logic, classified as CWE-345 (Insufficient Verification of Data Authenticity), stamped a marker into the workflow_dispatch inputs and then adopted the first run whose display title equalled that marker - without checking the event that produced the run, the ref it ran on, or its creation time. The marker is echoed into a run title readable by anyone who can list that workflow's runs, so it authenticates nothing; marker mode was therefore weaker than the best-effort mode, which at least required a creation window. The 1.10.0 fix (PR #542, commit 4257b0bc) unifies both modes on a single predicate requiring a workflow_dispatch event, the named ref and creation inside the discovery window, applied during the scan so a newer foreign run cannot mask the genuine one, and refuses with a named conflict when two candidates survive. The fix binds a run to the shape of the dispatch rather than to a provable identity, so an actions:write holder able to dispatch the same workflow on the same ref within the same window remains indistinguishable, and branch protection does not close that gap because workflow_dispatch is not gated by it. Per the assessed vector AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:H/A:L, the flaw is network-reachable but of high attack complexity, requires a low-privileged authenticated actor, changes scope, and yields high integrity impact with limited availability impact and no confidentiality impact.

Know when Zuke 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

Vendor (GitHub_M) PRIMARY 7.1 HIGH
AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:H/A:L
vuln.today AI 7.1 HIGH

Dispatching requires actions:write on the external repo (PR:L) in a non-default cross-trust configuration (AC:H); the gate authorizes across a trust boundary (S:C) with high integrity impact and release-blocking availability loss, no confidentiality impact.

3.1 AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:H/A:L
4.0 AV:N/AC:H/AT:N/PR:L/UI:N/VC:N/VI:H/VA:L/SC:N/SI:L/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
None
Integrity
High
Availability
Low

Lifecycle Timeline

2
Patch available
Oct 30, 2026 - 17:02 EUVD
CVE Published
Oct 30, 2026 - 15:48 cve.org
HIGH 7.1

DescriptionCVE.org

Zuke is a code-first, strongly typed build automation system for Deno. Prior to 1.10.0, the @zuke/gh githubWorkflow(...) gate correlates a dispatched workflow run using only a display-title marker that is visible in the workflow run list and can be copied by another dispatcher. In configurations where the external workflow repository grants workflow_dispatch permission to a party not equally trusted by the releasing repository, an attacker can dispatch a run with the marker and cause the gate to adopt its conclusion without verifying the event, ref, or creation window. A passing substituted run can authorize an unvalidated release, while a failed or cancelled run can block a valid release, and the persisted adopted run ID preserves the substitution across build resume. This issue is fixed in version 1.10.0.

Technical POC Analysis

CWE-345, Insufficient Verification of Data Authenticity.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

CVE-2026-119289 in Zuke's @zuke/gh GitHub orchestration package (before 1.10.0) allows a party with workflow dispatch rights in a separate repository to substitute a release gate run, enabling unvalidated releases or denial of valid ones. This undermines release integrity, requiring leadership attention due to potential for unauthorized software distribution and supply chain risks.

Business Impact: High
Compensating Controls

Vendor-released patch: 1.10.0

Threat Intelligence Overview

EPSS Score
0.2%
Top 93% exploitable
Prevalence
Low
niche code-first build tool for Deno, limited production footprint
Data Quality
4 sources
Confidence: Medium

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy