Skip to content

Back to the catalog

AI Security Briefing
thehackernews.comarticle

AI Security Briefing

Adversa AI's "GuardFall" research shows that command-safety filters in AI coding/computer-use agents check commands as plain text before bash rewrites them (stripping quotes, expanding variables, decoding base64), letting tricks like r''m slip past a blocklist and execute as rm. Ten of eleven tested open-source agents — opencode, Goose, Cline, Roo-Code, Aider, Plandex, Open Interpreter, OpenHands, SWE-agent, and Hermes (where the bug first surfaced) — were vulnerable; only Continue defended by parsing commands the way bash actually would. Adversa fully demonstrated the exploit against the production Plandex binary and replicated it against eight others, tying it to prior findings like TrustFall, AutoJack, and Agentjacking.

TL;DR GuardFall shows 10 of 11 open-source AI coding agents can be tricked into running blocklisted shell commands via quote-stripping/base64 tricks bash resolves differently than the filter sees.
Document

What it is

Adversa AI's GuardFall research (title: "AI Security Briefing"). The existing summary covers the mechanism and affected tools; what follows is the operational detail it omits — mitigations, the ordering constraint, and the limits of the one defense that worked.

How it works

Beyond the r''m-style quote trick already summarized, the page names two other payload shapes: a command hidden in base64 and piped into a shell, and ordinarily-safe tools like find and dd turned destructive with the right flag. Adversa frames this as "a dangerous convention and a class of problems," so there is no CVE and adding blocklist patterns fixes nothing. Live tests used Claude Sonnet 4.6.

Preconditions / Affected

Two conditions must both hold: (1) the agent emits the disguised command — refused if asked bluntly, but passed through when tucked inside a build file or a tool's "documentation" reply; (2) it runs unattended with auto-execute on or the sandbox off. The end-to-end demo was against the production Plandex binary, with the same shape working against eight others. Surveyed tools carried ~548,000 GitHub stars as of May 2026.

What to do

The page's mitigations, none complete on its own:

  • Point $HOME at a throwaway folder so ~/.ssh and ~/.aws are out of reach.
  • Disable auto-execute flags — --auto-exec, --auto-run, --auto-test, and dangerously-skip-permissions — unless the job truly cannot pause for a human.
  • Do not let agents run on pull requests from forks.
  • Treat repo-shipped config files like .aider.conf.yml as untrusted code — a malicious one can trigger the attack on the first accepted edit.

If building a defense, copy Continue's approach: tokenize the command the way bash will before matching, and keep a hard-coded destructive-command list. Adversa calls this portable and a roughly two-day re-implementation for an experienced engineer.

Caveats

  • Continue only held up fully in its default editor mode. Its command-line auto-run mode is weaker — a few payloads slipped through, though the most destructive still hit the hard block.
  • Adversa describes this as lab research; no public exploitation reported.
flowchart TD
    A[Poisoned repo/package] --> B[Agent emits disguised command]
    B --> C{Auto-exec on OR sandbox off?}
    C -->|No, human gates| S[Blocked]
    C -->|Yes| D{Guard parses like bash?}
    D -->|No: text match<br/>10 of 11 tools| E[rm runs with your privileges]
    D -->|Yes: Continue| S

Note: $HOME-relocation and fork-PR restrictions cut the chain at the exfiltration target and the entry point respectively, independent of the guard.

Organisations named here

  • Adversa AI
  • Agentjacking
  • AutoJack
  • GuardFall
  • TrustFall

Technologies named here

  • OpenCode
  • GuardFall
  • goose
  • TrustFall
  • AutoJack
  • Cline
  • Roo Code
  • Agentjacking
  • Aider
  • Plandex
  • Open Interpreter
  • OpenHands
  • SWE-Agent
  • Hermes
  • Continue
  • Claude Sonnet 4.6
  • Claude Code
  • Cursor
  • Gemini CLI
  • Copilot CLI

Techniques named here

  • Shell quote-stripping bypass
  • Base64-encoded command piped into shell
  • Destructive use of ordinary tools
  • Prompt/content injection to elicit malicious commands
  • Auto-execute/unsandboxed agent exploitation
  • Command tokenization defense