T09 · Insecure Skill Coding Practices
- Location
scripts/helpers.py:157- Finding
Untrusted Spreadsheet Values Can Be Written as Active Excel Formulas
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill matches its volunteer-hour spreadsheet purpose, but it needs review because it bulk-processes student personal data and can write unsafe spreadsheet formulas into the output workbook.
Install only for the intended university volunteer-hour workflow. Use a dedicated folder containing only the spreadsheets you intend to process, confirm authorization to handle student IDs and phone numbers, and avoid sharing generated workbooks until formula-prefixed values are sanitized. Install dependencies in a virtual environment, preferably from pinned hashes, and note that the referenced template asset is missing from this artifact.
scripts/helpers.py:157Untrusted Spreadsheet Values Can Be Written as Active Excel Formulas
SKILL.md:12Runtime Dependencies Are Installed Without Version or Integrity Pinning
The skill clearly instructs file read/write operations over user working directories and spreadsheet files, but it does not declare any explicit tool scope or permission boundary. That increases the chance of overbroad file access or unintended modification if the agent runtime grants broader filesystem capabilities than the task actually needs.
The trigger conditions are broad enough to activate on ordinary requests about volunteer-hour summaries, data cleanup, or spreadsheet processing, which could cause the skill to engage unexpectedly on unrelated files. Because the skill performs multi-file scanning and consolidation, accidental invocation could expose or process data the user did not intend to include.
The skill is designed to collect and normalize personal data including names, student IDs, phone numbers, colleges, and volunteer records from multiple spreadsheets, yet it provides no privacy warning, consent check, retention limit, or handling guidance for sensitive personal information. In this context, silent bulk processing of student data materially raises privacy and compliance risk, especially when scanning all matching files in a directory.
This markdown file presents all headings, mappings, and matching rules exclusively in Chinese. Under the policy rule for language/locale, forcing a specific language without user opt-in or a documented justification can be a natural-language policy violation.
The module docstring is written entirely in Chinese and describes the script as being used by an AI agent in a conversational workflow, which implies a Chinese-only interaction context. There is no indication that users may choose another language or that the locale restriction is explicitly documented as a justified regional constraint.
No suspicious patterns detected.