Chock.sh Build your plugin
Advisoryv0.0.2 preset: OWASP agentic top 10

OWASP ASI05 — Unexpected Code Execution

Advisory only. It is skill text, and nothing stops a violation.

Acts on

Agent instructions

When

As instructions the agent reads

Tested

0 of 6 pass

In a git repo

Advisory

What it does

Contain code an agent generates or is induced to run. Execute in a sandboxed container with least privilege and deny-by-default egress, prefer parameterised APIs over raw shell, and treat any string reaching a subprocess or interpreter as attacker-controlled. Use when adding a code interpreter, shell tool, subprocess call, or eval-style API to an agent. Do NOT use for eval/exec appearing in ordinary application code — that is code-safety.

Chock adds friction. It is not a security boundary.

Its label on each agent

The catalog grades each policy on each agent. Pick an agent to build with this policy:

  • Claude Code TestedAdvisory Advisory only. It is skill text, and nothing stops a violationBuild →
  • Cursor TestedAdvisory Advisory only. It is skill text, and nothing stops a violationBuild →
  • Codex TestedAdvisory Advisory only. It is skill text, and nothing stops a violationBuild →
  • GitHub Copilot TestedAdvisory Advisory only. It is skill text, and nothing stops a violationBuild →
  • Devin TestedAdvisory Advisory only. It is skill text, and nothing stops a violationBuild →
  • Grok Tested Not graded yet for GrokBuild →
  • goose Tested Not graded yet for gooseBuild →
  • Antigravity Tested Not graded yet for AntigravityBuild →
  • OpenHands Untested Not graded yet for OpenHandsBuild →
  • Kimi Code Untested Not graded yet for Kimi CodeBuild →
  • Factory Droid Untested Not graded yet for Factory DroidBuild →

What it misses

This policy does not state what it misses.

Latest change

0.0.2 · · Point at the mechanised slice: the agentic-code-security gate's exec pack refuses framework settings and tools that run model-written code on the host, at commit and at tool use. Everything else here stays advisory, and no rule text or claim is raised; the pointer is a see() and a references section.