Security & Compliance Blogs

Featured Blogs

March 17, 2025
Time to read

Incident Date: March 14th, 2024 (discovered)

CVE: CVE-2025-30066

Updates on the incident

This section will be updated regularly based on available information, and analysis related to the incident. Following the report on the tj-actions/changed-files supply chain attack, new findings from Wiz Research reveal that the compromise may have originated from a separate attack on reviewdog/actions-setup@v1. This newly discovered breach likely led to the compromise of the tj-actions-bot's GitHub Personal Access Token (PAT), enabling attackers to modify the tj-actions/changed-files repository and cause widespread secret leaks. The attack involved injecting a base64-encoded payload directly into the install.sh script, impacting CI workflows across multiple repositories.

Given that reviewdog/actions-setup@v1 was compromised before the tj-actions incident and later stealthily reverted, there is a significant risk of recurrence. Security teams should take immediate action by identifying affected repositories, removing references to impacted actions, rotating any potentially exposed credentials, and enforcing stricter security practices such as pinning GitHub Actions to specific commit hashes. Wiz has disclosed these findings to reviewdog and GitHub, and we continue to monitor developments to prevent further supply chain threats.

Overview

On March 14, 2025, a major supply chain attack compromised the tj-actions/changed-files GitHub Action, widely used across 23,000+ repositories. The attackers modified the action’s code and updated multiple version tags to a malicious commit, causing workflows to execute a script that leaked sensitive CI/CD secrets through workflow logs.The compromise is also being tracked as a vulnerability, and has been assigned CVE-2025-30066.

Breaking Down the Attack

The attackers injected malicious code by spoofing the commit with a Node.js function including base64-encoded payloads, which were added to the GitHub Action tags. The payload, once decoded, revealed a script that downloaded additional malicious Python code from a GitHub Gist. The Python script then scanned the memory of the GitHub Runner’s "Runner.worker" process for sensitive credentials using regular expressions. Finally, the extracted secrets were printed in the workflow logs, exposing them to unauthorized access.

__wf_reserved_inherit

Immediate Measures to Control the Impact

To mitigate the risks associated with this attack, consider the following immediate actions:

  • Allow-List GitHub Actions: Use GitHub’s allow-list to block compromised actions and keep it updated with trusted ones.
  • Pin GitHub Actions to Specific Commit SHAs: Avoid using floating tags (@v35, @latest); always pin to a specific SHA for security.
  • Rotate Secrets: Monitor logs for suspicious activity and immediately rotate any compromised secrets.
  • Manage Workflow Logs: Delete affected logs after analysis to remove traces of exposed secrets.

How can Harness SCS help?

Harness Supply Chain Security (SCS) proactively secures your software supply chain by identifying and mitigating risks within your workflows. It scans for unverified dependencies, unpinned GitHub Actions, and critical security misconfigurations, ensuring vulnerabilities are detected and addressed before they can be exploited. Harness also enforces supply chain benchmarks, performs comprehensive security checks, and implements proactive measures to prevent future attacks.

__wf_reserved_inherit


1. Identify Unpinned Actions: Harness SCS detects unpinned actions in the pipeline workflow. Unpinned GitHub Actions can be modified, allowing attackers to inject malicious code into pipelines, potentially exposing secrets or altering source code.

2. Restrict Action Permissions: Running unverified GitHub Actions without restrictions increases the risk of executing malicious code from compromised or hijacked actions. Enforcing minimal permissions helps limit potential damage and enhance security.

3. Minimal Token Permissions: Use Harness SCS to find and apply minimal token permissions for GitHub Actions, reducing exposure and ensuring adherence to the principle of least privilege.

__wf_reserved_inherit

The SCS module provide additional rules to minimize the blast radius of supply chain risks or attacks, limiting the attack surface and strengthening security.

Integrating Harness SCS Runtime Analysis with Traceable - Coming Soon!

__wf_reserved_inherit

The Traceable eBPF agent is set to offer several features that will significantly enhance runtime protection for both GitHub Actions and Harness CI in the future:

- Detect Leaked Secrets: By integrating with GitHub’s log API, it will be able to detect sensitive secrets exposed in logs, helping to mitigate the risk of data leakage.

- Monitor External URLs: The agent will be capable of spotting unusual GitHub Action calls to external URLs, using a baseline technique to reduce noise and improve detection of suspicious activities.

- Identify Malicious RCE: It will also be able to detect malicious remote code execution (RCE) calls, such as scripts trying to print environment variables, helping to block potential threats before they escalate.

Conclusion

The tj-actions/changed-files supply chain attack highlights the increasing risks in CI/CD security. To prevent similar incidents, organizations must adopt proactive security measures and follow best practices, such as using pinned actions, auditing workflows, and enforcing strict access controls. Consider using the Harness SCS to prevent future attacks.

Request a demo

September 25, 2024
Time to read

Modern software supply chains are extremely complex, comprising not only everything that goes into an application, but also the entire CI/CD toolchain that delivers the application from developers to customers. Attackers love this complexity. They see each link in this chain as an attack vector, with the potential to compromise vulnerable elements without detection. Software supply chain attacks are on the rise in number and in sophistication and Gartner Research estimates that by 2025, at least 45% of enterprise organizations will have experienced at least one software supply chain attack.

In recent years, we’ve witnessed a series of high-profile attacks that emerged in the application space, targeting open source software dependencies. The log4j vulnerability is arguably the most notorious example of this type of breach, as it impacted tens of thousands of organizations and allowed attackers to execute commands remotely through a shell. 

Attacks like the one that compromised SolarWinds targeted the build systems where attackers exploited misconfigured CI/CD tools to replace legitimate source code with new files, giving them backdoor access that compromised tens of thousands of SolarWinds’ customers.

FIGURE 1: High-profile Attacks And The Supply Chain Elements They Targeted

To protect against sophisticated supply chain threats, we need a comprehensive supply chain security solution that can not only effectively block zero day vulnerabilities linked to OSS dependencies, but which can also prevent attackers from compromising code repositories, CI/CD tools, and artifact registries by identifying and eliminating security vulnerabilities and misconfigurations.

Announcing CI/CD Security Posture Management With Harness Supply Chain Security (SCS)

We routinely hear from customers with clear goals of bringing their software supply chains in line with the leading risk and compliance frameworks, such as CIS, OWASP Top-10, NIST, etc. that achieving their objectives is anything but straightforward. Fortunately, Harness has a deep and detailed understanding of the software supply chain, and since last year’s introduction of integrated features to govern open source software (OSS) dependencies using SBOMs and artifact promotion with SLSA build attestations, we’ve expanded our focus to CI/CD pipelines for end-to-end software supply chain security. 

The Harness Supply Chain Security (SCS) module is designed to prevent attacks similar to the CodeCov and Solarwinds hacks in different attacks paths by rapidly identifying security gaps and aligning code repos, CI/CD tools, and artifact registries with OWASP Top-10 CI/CD Security Risks, CIS Supply Chain Security Benchmarks and other essential risk frameworks. In addition to the Harness platform, SCS integrates with GitHub and other major 3rd party developer platforms.

Preventing Attacks And Achieving Continuous Software Supply Chain GRC With Harness SCS

Overall, when it comes to achieving continuous supply chain GRC (governance, risk management & compliance), there are three main stages. The first is focused on software artifact governance, where organizations define and enforce policies to control the use of OSS dependencies using SBOMs (software bill of materials) and artifact promotion using SLSA attestations. 

The second aspect, which is the focus of this blog– involves understanding supply chain security posture through pinpointing CI/CD toolchain risks and bringing code repos, CI and CD tools, and artifact repositories into compliance with major risk frameworks. Through the Supply Chain Security module, Harness makes this possible not only for Harness CR, CI, and CD, but also for 3rd party developer platforms such as GitHub.

Finally, continuous supply chain GRC relies on a readiness to quickly remediate any risk and compliance issues, including the removal of non-compliant OSS dependencies and blocking of dependencies impacted by zero-day vulnerabilities.

FIGURE 2: Three Pillars Of Continuous Supply Chain GRC

Harness SCS: A Look At CI/CD Security Posture Management 

The first step in building a detailed picture of your software supply chain security posture is to evaluate it against extensive risk and compliance rulesets. In Harness SCS, CIS Supply Chain Security Benchmark and OWASP Top 10 Security Risks for CI/CD and OSS are listed in detail in the ‘Rule Definitions’ section (shown below) of the SCS module’s compliance feature section.

FIGURE 3: Harness SCS Module Rule Definitions

Next, running evaluations of your CI/CD pipelines’ security postures against these rulesets enables you to  pinpoint vulnerabilities and other security gaps, such as pipeline misconfigurations. The results of these checks are presented in the SCS module’s compliance dashboard, which displays rule failures by severity and evaluation trends over time. The bottom of the dashboard highlights rules that fail most often. In this particular example, this list includes 73 counts of failure because of pipelines being ‘vulnerable to command injection’.

FIGURE 4: Harness SCS Compliance Dashboard

By clicking on a specific evaluation status, you can access detailed information about the rule, including the reason for its failure and general remediation steps to help address the issue identified.

FIGURE 5: Harness SCS offers detailed guidance for remediating rule violations

Conclusion

Attacks on software supply chains will only continue to intensify, so it is critical to have the tools in place to rapidly assess and remediate areas of vulnerability across repos, CI/CD tooling, registries, software artifacts, and other elements in the chain. If you’re a CISO or a compliance leader, you know first-hand that bringing your software supply chains into compliance can be a convoluted process. The good news is that Harness SCS now gives you the tools and workflows to enable fast identification and remediation of improper CI/CD access controls, misconfigurations and vulnerabilities. These capabilities make software supply chain GRC substantially easier for you!

Want to learn more about what Harness SCS can do for your software supply chain security posture? Request a demo!

Contact a Harness expert

Checkout Harness SCS

Learn about Software Supply Chain Security

Recent Blogs