T09 · Insecure Skill Coding Practices
- Location
scripts/amz_scraper.py:91- Finding
Spreadsheet Formula Injection Through Scraped Search Terms
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill appears purpose-built for AMZ123 keyword scraping, but its unsafe browser setting and CSV export handling make it worth manual review before use.
Install only in an isolated virtual environment or container, avoid running the browser as a privileged user, remove the default --no-sandbox setting unless your container explicitly requires it, and prefer JSON output or sanitize CSV cells before opening reports in spreadsheet software.
scripts/amz_scraper.py:91Spreadsheet Formula Injection Through Scraped Search Terms
scripts/amz_scraper.py:48Chrome Sandbox Disabled While Processing Remote Web Content
references/workflow.md:1Unpinned and Unnecessary Third-Party Dependency Installation
The manifest uses very broad trigger phrases such as 'Amazon keyword', 'keyword trend', and multilingual variants without clear narrowing conditions. This can cause the skill to activate for loosely related requests and initiate web scraping or file-producing behavior when the user did not specifically ask for this tool, increasing the chance of unintended external access and unnecessary data collection.
The manifest frames this skill as scraping and returning structured keyword trend data from AMZ123. However, the workflow documentation adds an authentication capability via python-dotenv and credential handling if data becomes gated, which is not justified by the stated read-only public-scraping purpose and expands the skill into secret management/login automation.
The skill states that results are automatically written to local CSV/JSON files but does not warn the user that disk artifacts will be created. In an agent environment, silent file creation can surprise users, expose scraped data to other local processes or users, and leave residual files containing potentially sensitive or proprietary query results.
The file opens by describing the skill as an end-to-end scraper for AMZ123 hot keyword rankings, consistent with the manifest. But the procedure then says it accepts a --keyword, submits a search, and scrapes a table of related search terms, which contradicts the claimed fixed-scope weekly hot-keyword ranking workflow and suggests materially different behavior.
This markdown file documents that the skill writes scraped results to a timestamped CSV or JSON file and prints the absolute path, but it does not include any warning that running the skill will create files on the local filesystem. For markdown files, SQP-2 applies when the description omits warnings about behaviors that could affect user data or system state.
No suspicious patterns detected.