T09 · Insecure Skill Coding Practices
- Location
scripts/schema.sh:160- Finding
SQL Injection Through Unsanitized Table Identifiers
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This database schema skill is mostly purpose-related, but it includes under-disclosed generators that can produce unsafe SQL and hardcoded administrator seed credentials.
Review this skill before installing. It does not show exfiltration or system compromise behavior, but its richer schema generator is under-disclosed and can emit SQL or seed data that should not be executed against staging or production databases without validation and manual review.
scripts/schema.sh:160SQL Injection Through Unsanitized Table Identifiers
scripts/schema.sh:208Predictable Unsalted Password Hashes in Generated Seed Data
The declared description partially matches the code: it does build database schemas, generate SQL, and show relationship models/ER diagrams. However, the implementation materially extends beyond that purpose. It also generates migration scripts, seed data, optimization advice, NoSQL schemas, and a schema comparison helper. These are substantive extra capabilities rather than minor implementation details. There is no evidence of unrelated external access or hidden side effects; the mismatch is due to undeclared functionality breadth rather than malicious behavior.
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
createscripts/script.sh create <table cols>
alterThe manifest describes this skill as building database schemas with SQL generation and relationship modeling, which implies SQL-oriented schema design. The nosql command expands the skill into MongoDB document-schema generation, a materially different capability not reflected in the manifest description.
Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.
DATA_DIR="$HOME/.local/share/schema-builder"
mkdir -p "$DATA_DIR"
#
#
#
#