snowflake-snowpark-dbt
Warn
Audited by Gen Agent Trust Hub on Oct 10, 2026
Risk Level: MEDIUMDYNAMIC_EXECUTIONINDIRECT_PROMPT_INJECTION
Full Analysis
- [DYNAMIC_EXECUTION]: The example provided for creating a Vectorized UDF utilizes
pickle.load()to deserialize a model file at runtime. - Evidence (SKILL.md):
model = pickle.load(open(sys.path[0] + "/model.pkl", "rb")) - The
picklemodule is well-known for being vulnerable to arbitrary code execution during deserialization. While the provided example references a local file (model.pkl), this implementation pattern is considered a security risk if the provenance of the file cannot be strictly verified or if the execution environment allows for file tampering. - [INDIRECT_PROMPT_INJECTION]: The skill describes a data transformation workflow that ingests data from external Snowflake tables, creating a surface for indirect prompt injection if the processed data contains instructions intended for an agent.
- Ingestion points: The skill reads data from Snowflake tables using
session.table("customers")and dbt source/reference macros like{{ ref('stg_orders') }}. - Boundary markers: The skill does not describe or implement delimiters, tagging, or specific instructions to ignore potential commands embedded within the retrieved data.
- Capability inventory: The skill utilizes powerful data manipulation capabilities, including row-wise UDFs, vectorized pandas UDFs, and stored procedures that can write data back to the database via
save_as_table. - Sanitization: There is no evidence of sanitization, filtering, or validation of the data content to prevent embedded instructions from influencing downstream agent behavior or logic execution.
Audit Metadata