bx-ai-pipelines
Warn
Audited by Gen Agent Trust Hub on Oct 19, 2026
Risk Level: MEDIUMDYNAMIC_EXECUTIONINDIRECT_PROMPT_INJECTION
Full Analysis
- [DYNAMIC_EXECUTION]: The
aiTransformBIF and the fluent.transform()method allow for the execution of logic at runtime through two main vectors: passing arbitrary closures (e.g.,r -> r.trim()) and providing string-based class paths (e.g.,aiTransform( "bxModules.bxai.models.transformers.TextCleanerTransformer" )) that the system loads and executes. This design facilitates dynamic code loading and execution within the pipeline workflow. - [INDIRECT_PROMPT_INJECTION]: The framework relies heavily on template interpolation to handle data between pipeline stages, creating a significant surface for indirect prompt injection.
- Ingestion points: Untrusted data is ingested via the
run(),stream(), andrunAsync()methods (e.g.,pipeline.run({ text: userContent })) and passed between steps using the${_input}system variable. - Boundary markers: While the documentation mentions an
addUntrusted()method to label content, the core examples demonstrate direct interpolation (e.g.,${text},${code}) without boundaries, which encourages unsafe practices. - Capability inventory: The pipeline has the ability to invoke various AI models via
aiModeland execute arbitrary transformation logic viaaiTransform(closures or classes). - Sanitization: There is no documentation of built-in sanitization or escaping for the standard
${}placeholder syntax, meaning attacker-controlled input could be interpreted as instructions by the downstream LLM.
Audit Metadata