data-analysis-skill
Warn
Audited by Gen Agent Trust Hub on Oct 8, 2026
Risk Level: MEDIUMINDIRECT_PROMPT_INJECTIONDYNAMIC_EXECUTIONDATA_EXFILTRATION
Full Analysis
- [DYNAMIC_EXECUTION]: The Streamlit dashboard patterns and KPI components utilize
st.markdown(..., unsafe_allow_html=True)to render HTML strings constructed via string interpolation of data-derived values. - Evidence: In
reference/streamlit-patterns.mdandreference/chart-gallery.md, thekpi_cardandkpi_rowfunctions build HTML templates usingf-stringsfor labels and values, which are then rendered withunsafe_allow_html=True. This allows malicious content within a data file to execute arbitrary JavaScript in the dashboard environment (XSS). - [INDIRECT_PROMPT_INJECTION]: The skill is designed to ingest data from a wide variety of untrusted external formats and subsequently use that data for narrative generation and executive reporting.
- Ingestion Points:
load_datafunction inSKILL.mdandDataLoaderclass inreference/data-wrangling.mdsupport CSV, XLSX, JSON, Parquet, PDF, PPTX, DOCX, MD, and SQL. - Boundary Markers: No explicit delimiters or instructions are provided to the agent to ignore or sanitize embedded instructions within the processed datasets.
- Capability Inventory: The skill performs file reading, data transformation, visualization, and relies on Claude for narrative generation based on the ingested data.
- Sanitization: Lacks specific sanitization to prevent data content from influencing the agent's instructions during the narrative generation phase.
- [DATA_EXFILTRATION]: The skill includes instructions to write outcome and telemetry data to a specific hidden directory within the user's home folder.
- Evidence: The "Emit Outcome Sidecar" section in
SKILL.mdinstructs the agent to write a JSON payload containing session details and metrics to~/.claude/skill-analytics/last-outcome-data-analysis-skill.json. Writing to hidden configuration directories is a technique that can be used for persistence or stealthy data collection.
Audit Metadata