snowflake-access-guardian

Pass

Audited by Gen Agent Trust Hub on Sep 9, 2026

Risk Level: SAFECOMMAND_EXECUTIONDYNAMIC_EXECUTIONINDIRECT_PROMPT_INJECTION
Full Analysis
  • [COMMAND_EXECUTION]: The script scripts/collect_snowflake_evidence.py utilizes subprocess.run to execute the Snowflake CLI (snow). This is a functional requirement for gathering authorization evidence. The implementation is secured by:
  • Using list-based command arguments to prevent shell injection.
  • Validating all user-supplied identifiers (roles, users, databases) against strict regular expressions (e.g., IDENTIFIER_RE).
  • [DYNAMIC_EXECUTION]: The orchestrator script scripts/analyze_access_evidence.py uses importlib to dynamically load and execute the core analyzer logic in scripts/analyze_access.py. This is a modular design pattern for local scripts and does not involve loading remote or untrusted code.
  • [INDIRECT_PROMPT_INJECTION]: The skill is designed to ingest and process Snowflake authorization metadata which could theoretically contain malicious payloads. This risk is mitigated by a multi-layered evidence chain:
  • Ingestion points: Snowflake authorization metadata is ingested via snowflake-access-bundle.json into scripts/analyze_access.py.
  • Boundary markers: The skill instructions and documentation explicitly define the schema for 'sanitized' metadata and evidence receipts.
  • Capability inventory: The skill possesses Bash (python3) for execution and Write capabilities to generate reports and temporary SQL files for the Snowflake CLI.
  • Sanitization: The reject_secrets function in analyze_access.py uses regex patterns to identify and block the ingestion of credentials (passwords, tokens, private keys). Additionally, sanitize_output_tree in collect_snowflake_evidence.py recursively redacts sensitive fields before they are written to receipts.
Audit Metadata
Risk Level
SAFE
Analyzed
Sep 9, 2026, 03:46 AM
Security Audit — agent-trust-hub — snowflake-access-guardian