The Vulnerability: Clinejection

In December 2025, Cline, an AI coding assistant boasting over 5 million users, fell victim to a sophisticated supply chain attack dubbed "Clinejection." The vulnerability stemmed from a critical misconfiguration in its GitHub issue triage automation. This automation, intended to streamline issue management, inadvertently granted an AI agent, Claude, write access to GitHub issues and, more alarmantly, the permission to execute shell commands. The root cause was a trigger condition that allowed any GitHub user, not just authenticated contributors, to invoke this powerful workflow. This opened the door for unauthenticated input to initiate a chain of malicious actions.

The attack unfolded across four distinct hops, a testament to its intricate design. It began with a seemingly innocuous GitHub issue title, which acted as the initial vector. This exploit leveraged the broad permissions granted to the AI agent, turning a trusted automation into a weapon.

Diagram illustrating the four-hop Clinejection supply chain compromise

Hop 0: The Setup - A Flawed Foundation

The automation workflow was configured with an overly permissive set of tools and a trigger condition that was far too open. By allowing any GitHub user to invoke the workflow, the system essentially accepted input from an untrusted source. This lack of authentication on the trigger was the fundamental flaw. The exact configuration values, detailed in the confirmed artifacts section of the original research, highlight how easily such broad permissions could be exploited. Imagine a security guard who not only lets anyone into a building but also gives them the keys to every room. That's effectively what happened here.

Hop 1: The Initial Compromise - A Malicious Prompt

The first hop in the attack chain involved manipulating the AI agent's prompt. A malicious actor crafted a GitHub issue with a specific title designed to exploit the misconfigured workflow. When the AI agent processed this issue, the crafted title acted as an injection payload. This payload was designed to trick the AI into executing unintended commands or revealing sensitive information. The AI, operating under the broad permissions it had been granted, processed the malicious input as if it were a legitimate command or instruction. This initial compromise was subtle, designed to go unnoticed while setting the stage for further escalation.

Hop 2: Escalation via a Trusted Channel

Following the initial prompt injection, the attack escalated to the second hop. The compromised AI agent, now under the control of the attacker, was used to interact with another system or service. In this case, it involved leveraging the AI's access to further system resources or to trigger actions in a different part of the development pipeline. This hop likely involved the AI agent making a request or executing a command that led to the compromise of a different, but related, system. The key here is that the AI agent, a trusted component within the Cline ecosystem, was now acting as an unwitting accomplice in the attack.

Hop 3: The Supply Chain Pivot - Malicious npm Package

The third hop was a critical pivot point: the attackers leveraged the compromised system to introduce a malicious npm package. This package, disguised as a legitimate dependency, was designed to be silently installed by developers using Cline. Once installed, this malicious package contained code that executed further malicious actions on the user's machine. This is a classic supply chain attack vector, where the integrity of a software dependency is compromised to distribute malware. The attackers exploited the trust developers place in npm packages and the automated build processes that often incorporate them.

Screenshot of a GitHub issue title used in the Clinejection attack

Hop 4: The Final Payload - A Second AI Agent

The culmination of the Clinejection attack was the silent installation of a second AI agent on user machines. This agent, distinct from Cline's Claude, was the ultimate payload. Its purpose was likely to exfiltrate data, steal credentials, or provide persistent access to the compromised systems. The fact that it was another AI agent suggests a targeted attack against developers or potentially a broader effort to compromise AI development environments. The silent nature of the installation meant that users were likely unaware their machines had been compromised until the malicious agent began its work.

Broader Implications and Unanswered Questions

The Clinejection attack serves as a stark reminder of the inherent risks in integrating AI agents into development workflows, particularly when those agents are granted extensive permissions. The reliance on automated processes and the trust placed in third-party tools and dependencies create fertile ground for sophisticated supply chain attacks. While the specific technical details of the four-hop compromise have been laid bare, significant questions remain. What specific data was exfiltrated by the second AI agent? Was the attack purely opportunistic, or was there a specific target group of developers or organizations? Furthermore, how many of the 5 million Cline users were truly affected, and what is the extent of the lingering compromise on their systems?

The incident underscores the urgent need for more rigorous security practices in AI development and deployment. This includes granular permission management, robust input validation for AI prompts, and continuous monitoring of AI agent behavior. Developers and organizations must treat AI agents with the same security scrutiny as any other powerful tool in the software development lifecycle. The ease with which a simple GitHub issue title could trigger such a devastating cascade is a critical lesson for the entire industry.