Rules File Backdoor: AI Code Editors exploited for silent supply chain attacks

Pierluigi Paganini March 19, 2025

The Rules File Backdoor attack targets AI code editors like GitHub Copilot and Cursor, making them inject malicious code via a supply chain vulnerability.

Pillar Security researchers uncovered a dangerous new supply chain attack vector called ‘Rules File Backdoor.’ Threat actors could use the technique to silently compromise AI-generated code by injecting malicious code. The attack targets AI code editors like GitHub Copilot and Cursor.

The Rules File Backdoor attack exploits hidden Unicode and evasion tactics to trick AI code assistants into injecting undetectable malicious code, bypassing reviews.

“By exploiting hidden unicode characters and sophisticated evasion techniques in the model facing instruction payload, threat actors can manipulate the AI to insert malicious code that bypasses typical code reviews. This attack remains virtually invisible to developers and security teams, allowing malicious code to silently propagate through projects.” reads the report published by Pillar Security. ‍ “Unlike traditional code injection attacks that target specific vulnerabilities, “Rules File Backdoor” represents a significant risk by weaponizing the AI itself as an attack vector, effectively turning the developer’s most trusted assistant into an unwitting accomplice, potentially affecting millions of end users through compromised software.”

Rule files are configuration files that guide AI Agent behavior in code generation and modification, defining coding standards, project architecture, and best practices. They are stored in central repositories with broad team-wide or global access, widely adopted in open-source communities, and often trusted as harmless configuration data. However, they frequently bypass security scrutiny and are integrated into projects without proper validation.

The experts noted that AI coding assistants’ reliance on rule files creates a major attack surface. Hidden Unicode in shared rule files can inject vulnerabilities, bypassing security reviews.

The attack embeds deceptive prompts in rule files, tricking AI tools into generating code with security vulnerabilities or backdoors.

“attackers can exploit the AI’s contextual understanding by embedding carefully crafted prompts within seemingly benign rule files.” continues the report. “When developers initiate code generation, the poisoned rules subtly influence the AI to produce code containing security vulnerabilities or backdoors.”

The attack exploits contextual manipulation, Unicode obfuscation, semantic hijacking, and cross-agent vulnerabilities to alter AI-generated code. By embedding hidden instructions in rule files, threat actors can persistently influence AI coding assistants, injecting security flaws into projects. Once incorporated, these malicious rule files impact all future code generation, surviving project forking and enabling widespread supply chain attacks.

The researchers published a video PoC of the attack in a real environment, highlighting how AI-generated files can be poisoned via manipulated instruction files.

Below is the timeline of the Responsible Disclosure:

Cursor

  • February 26, 2025: Initial responsible disclosure to Cursor
  • February 27, 2025: Cursor replied that they are investigating the issue
  • March 6, 2025: Cursor replied and determined that this risk falls under the users’ responsibility
  • March 7, 2025: Pillar provided more detailed information and demonstration of the vulnerability implications
  • March 8, 2025: Cursor maintained their initial position, stating it is not a vulnerability on their side

GitHub

  • March 12, 2025: GitHub replied and determined that users are responsible for reviewing and accepting suggestions generated by GitHub Copilot.
  • March 12, 2025: Initial responsible disclosure to GitHub

Follow me on Twitter: @securityaffairs and Facebook and Mastodon

Pierluigi Paganini

(SecurityAffairs – hacking, Rules File Backdoor)



you might also like

leave a comment