T09 · Insecure Skill Coding Practices
- Location
equity_scorer.py:766- Finding
Shell Injection in Generated Reproducibility Command
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill appears intended for local genomics equity analysis, but it has review-worthy safety gaps around sensitive genomic outputs, report integrity, and generated shell commands.
Install only if you are comfortable running a local genomics analysis tool that writes persistent reports. Use it in a restricted workspace with non-sensitive or approved data, review generated markdown before sharing or executing any reproduced command, and treat the HEIM score and FST output as analytical aids rather than publication-ready conclusions without independent validation.
equity_scorer.py:766Shell Injection in Generated Reproducibility Command
equity_scorer.py:653Unescaped Input Values Permit Markdown and Report-Structure Injection
SKILL.md:16Third-Party Installation Dependencies Are Not Version- or Integrity-Pinned
The skill describes generating reports, figures, tables, and reproducibility files, which implies filesystem write capability, but it does not declare any explicit tool scope such as permissions or allowed-tools. This creates a least-privilege gap: the runtime may grant broader write access than necessary, increasing the risk of unintended file modification or overwrite if the skill is misused or later extended unsafely.
The scoring system hard-codes a single set of 'global proportions' and uses it as a normative benchmark for representation and report narratives. In an equity-scoring tool, this can systematically bias results, mischaracterize datasets from specific regions or study designs, and create harmful or misleading fairness claims that users may interpret as objective security/compliance evidence.
The skill ingests genotype and ancestry data, computes population-level summaries, PCA coordinates, checksums, and writes persistent markdown/CSV/JSON outputs without any privacy notice, minimization controls, consent gating, or de-identification guidance. Even if sample IDs are not always printed directly, derived genomic and ancestry outputs can still be sensitive and may enable unintended disclosure or re-identification when shared or stored insecurely.
The report explicitly labels the metric as 'Hudson FST' while the implementation and comments describe a Nei/GST-style calculation. This is an integrity and scientific-misrepresentation issue: downstream users may make decisions or publish conclusions under a false assumption about the statistic used, which is especially sensitive in a genomics/equity context.
No suspicious patterns detected.