T09 · Insecure Skill Coding Practices
- Location
scripts/audit-log.sh:15- Finding
Arbitrary Python Code Execution Through Unsafe Argument Interpolation
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill has a coherent governance purpose, but its shell wrappers handle user input unsafely enough to warrant manual review before installation.
Review this skill before installing. Only run it in a constrained environment, avoid passing untrusted agent names, policy paths, messages, signatures, or action strings to the scripts, and prefer a version that passes inputs through argv or stdin, validates arguments, pins dependencies, and fails closed when AgentMesh is unavailable.
scripts/audit-log.sh:15Arbitrary Python Code Execution Through Unsafe Argument Interpolation
SKILL.md:30Unpinned Third-Party Package and Mutable Git Dependency Installation
The activation criteria are overly broad because they trigger on general questions about agent safety, governance, compliance, or trust rather than narrowly scoped operational tasks. In an agent runtime, this can cause the skill to activate in unrelated conversations, increasing the chance it steers decisions, invokes scripts, or inserts policy logic where the user did not explicitly request this governance layer.
The shell script interpolates the user-controlled AGENT value directly into a Python -c string enclosed in double quotes and then into a Python single-quoted literal. An attacker can supply crafted input containing quotes and Python syntax to break out of the string and achieve arbitrary Python code execution when the script runs.
The fallback path returns a hardcoded trust score of 0.5 and labels it as baseline trust information, which can mislead downstream automation or operators into treating an unverified agent as moderately trusted. In a governance skill, trust scores may drive delegation, policy bypass, or access decisions, so placeholder data can directly undermine security controls even without code execution.
No suspicious patterns detected.