yield-opportunities

Fail

Audited by Gen Agent Trust Hub on Feb 17, 2026

Risk Level: HIGHCOMMAND_EXECUTIONEXTERNAL_DOWNLOADSDATA_EXFILTRATIONPROMPT_INJECTION
Full Analysis
  • [COMMAND_EXECUTION] (HIGH): The script scripts/compare-protocols.sh is vulnerable to command injection via the awk command. The variable TOTAL_APY is derived from an external API response using jq and then interpolated directly into an awk script: awk "BEGIN {printf \"%.2f\", ${TOTAL_APY}/${TOTAL_COUNT}}". If the API (DefiLlama) returns a malicious string in the apy field, it could result in arbitrary code execution on the user's system.
  • [DATA_EXFILTRATION] (MEDIUM): The scripts/compare-protocols.sh script supports an --export parameter that writes results to a user-provided file path: echo -e "$CSV_DATA" > "$EXPORT_FILE". This lack of path validation allows for arbitrary file writes, which could be used to overwrite sensitive system configurations or user files if the agent is manipulated into using a dangerous path.
  • [EXTERNAL_DOWNLOADS] (LOW): The skill intentionally downloads DeFi yield data from yields.llama.fi. While this is the core functionality, the use of unauthenticated and unsanitized data in downstream shell operations creates the high-severity risks identified.
  • [PROMPT_INJECTION] (LOW): The skill possesses a surface for indirect prompt injection.
    1. Ingestion points: Data is fetched via curl in scripts/compare-protocols.sh and requests in scripts/fetch-defillama-yields.py.
    2. Boundary markers: Absent. The data is parsed but not delimited or guarded against instruction injection.
    3. Capability inventory: The skill can execute subprocesses (jq, awk) and write to the filesystem (>).
    4. Sanitization: Absent. External data from the API is directly printed and used in commands, allowing malicious metadata to influence the agent.
Recommendations
  • AI detected serious security threats
Audit Metadata
Risk Level
HIGH
Analyzed
Feb 17, 2026, 05:59 PM