fabric-cli
Pass
Audited by Gen Agent Trust Hub on Oct 23, 2026
Risk Level: SAFEINDIRECT_PROMPT_INJECTIONCOMMAND_EXECUTION
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The skill exhibits an indirect prompt injection surface due to its ability to ingest untrusted data from the Fabric environment and its possession of powerful capabilities.
- Ingestion points: The script
scripts/get_semantic_model_ai_metadata.pyretrieves and parsescustomInstructionsand AI schema metadata directly from semantic model definitions.scripts/download_workspace.pyand other export-related commands read full item definitions (TMDL, PBIR, and JSON) into the agent's context. - Boundary markers: Absent. External content from item definitions is parsed and presented to the agent without explicit delimiters or warnings to ignore embedded instructions.
- Capability inventory: The skill has extensive shell command capabilities via
subprocess.run(executingfab,az,sqlcmd, andduckdb), network access to Microsoft cloud APIs viaurllibandrequests, and local file write permissions throughdownload_workspace.pyandexecute_dax.py. - Sanitization: Absent. Metadata and item definitions are parsed from external JSON/TMDL sources and used directly in the workflow without filtering.
- [COMMAND_EXECUTION]: The skill relies on multiple Python scripts that use
subprocess.runto execute shell commands. This is the intended primary purpose of the skill. - Evidence:
scripts/query_sql_endpoint.pyinvokessqlcmd,scripts/query_lakehouse_duckdb.pyinvokesduckdb, andscripts/deploy_notebook.pyinvokes bothazandfabCLIs. - Risk mitigation: All subprocess calls use the list-based argument format rather than
shell=True, which prevents standard shell injection vulnerabilities from user-supplied inputs like workspace names or queries.
Audit Metadata