Back to Feed
Supply ChainOct 26, 2026

The Pwn Request Reckoning: What Still Works Against GitHub Actions

GitHub Actions pull_request_target attacks persist despite 2026 security changes.

GitHub has implemented significant security changes to its Actions platform in 2026, particularly around the `pull_request_target` trigger, to mitigate risks associated with running workflows with repository secrets from untrusted forks. While default protections like checkout hardening and read-only cache tokens make exploitation harder, attackers can still find residual attack vectors. These include explicit opt-ins for `pull_request_target`, outdated checkout versions, unprotected triggers, and script injection, especially in private/internal repositories or when SHA pinning uses older commit SHAs that bypass newer protections.

AI summary of the linked source. Not reviewed by an editor. How this works

Vendor Watch

Run GitHub?

Get an email when a new story names GitHub, usually within the hour.

Free. Your list stays private and never appears in a subject line. One click stops it. How Vendor Watch worksPrivacy

The lesson from this incident

Full lesson

Despite GitHub's significant security improvements to the Actions platform in 2026, attackers can still exploit residual weaknesses in CI/CD pipelines — particularly through explicit opt-ins to `pull_request_target`, outdated checkout action versions, unprotected workflow triggers, and script injection vulnerabilities. The core problem is that security defaults only protect repositories that haven't been manually configured to bypass them, leaving organizations that customized their workflows before the hardening changes especially exposed. This matters because a successful 'pwn request' attack allows an untrusted fork contributor to execute arbitrary code in the context of the target repository, potentially exfiltrating secrets, poisoning build artifacts, or compromising downstream supply chain dependencies. Misconfigured CI/CD pipelines represent a high-value, often overlooked attack surface that bridges code repositories and production environments.

What helps against this

How we list vendors

Entities

GitHub Actions (product)pull_request_target (technology)GitHub (vendor)