factormad-debate-factor-mining

Warn

Audited by Gen Agent Trust Hub on Oct 17, 2026

Risk Level: MEDIUMDYNAMIC_EXECUTIONINDIRECT_PROMPT_INJECTION
Full Analysis
  • [DYNAMIC_EXECUTION]: The skill utilizes exec() in scripts/factormad_runtime/factormad_compute_runtime.py and eval() in scripts/factormad_runtime/alpha_ops.py to execute Python code generated by a Large Language Model (LLM). Although the skill implements a keyword-based filter (_factor_namespace) to block imports and dangerous modules like os or subprocess, the execution of dynamically generated code is inherently risky as these heuristic checks can potentially be bypassed.
  • [INDIRECT_PROMPT_INJECTION]: The workflow incorporates untrusted external inputs—such as column names from market data CSVs and user-defined factor requirements—directly into the LLM prompts. This creates a surface for indirect prompt injection, where malicious input could coerce the LLM into generating factor code designed to evade security checks or perform unauthorized actions. * Ingestion points: market_data_csv_path and factor_requirement fields in the input JSON, processed in factormad_compute_runtime.py. * Boundary markers: The skill uses JSON-structured prompts but lacks strong delimiters or specialized 'ignore instructions' wrappers for all user-controlled variables. * Capability inventory: The skill possesses the capability to execute Python code via exec() and eval() across multiple runtime scripts. * Sanitization: Heuristic keyword filtering is performed in _factor_namespace to detect and block common attack vectors like import, os., and subprocess.
Audit Metadata
Risk Level
MEDIUM
Analyzed
Oct 17, 2026, 09:17 AM