skill-security-vet
Undeclared computer-wide filesystem scanning and auto-quarantine capabilities discovered - SKILL.md only mentions skill scanning but code includes full drive scanning mode.
Why this conclusion was reached
2/4 dimensions flagged2 undeclared or violating capabilities were inferred.
2 lower-risk artifacts were extracted and still need context.
The report includes 4 attack-chain steps and 2 severe findings.
Dependencies are present but no obvious high-risk issue stands out.
Attack Chain
Entry · SKILL.md:1
reconnaissance · vet.ts:219
reconnaissance · vet.ts:239
Impact · vet.ts:160
What drove the risk score up
SKILL.md describes only skill scanning, but vet.ts has 'local' and 'full' modes scanning entire computer drives
Automatic file quarantine and removal without explicit user consent per operation
Scans all directories up to depth 5, examining all script file types across the entire system
Skill-scanning should not require full computer filesystem access
Most important evidence
Undeclared local/full computer scanning mode
vet.ts contains 'local' and 'full' scanning modes that recursively scan entire system drives (C:, D:, E:, F: on Windows, / on Unix) up to depth 5, examining 10,000+ files. SKILL.md only describes scanning installed skills in ~/.opencode/skill.
vet.ts:219 Automatic file quarantine without consent
The tool automatically quarantines (copies and deletes) or removes files identified as dangerous without prompting for user consent per operation. Configured via --auto flag.
vet.ts:160 Undocumented VirusTotal API integration
Code integrates with VirusTotal API to submit file hashes for scanning. While the SKILL.md mentions VirusTotal, it doesn't detail the API endpoint or that file hashes are sent externally.
vet.ts:127 Suspicious file pattern matching
Tool scans for credential-related patterns including decodeURIComponent with password/token, keyloggers, remote connection attempts (SSH/RDP). While legitimate for security scanning, combined with undeclared full drive access this could be used for credential harvesting.
vet.ts:50 Broad exclusion list suggests awareness of sensitive areas
The excludeSet includes AppData/Local/Temp, Windows, Program Files, etc. This suggests the tool is aware of and avoids Windows system areas while potentially targeting user data areas.
vet.ts:239 Declared capability vs actual capability
vet.ts:219-263 (scanLocalComputer function scans entire drives) vet.ts:127-154 (VirusTotal API calls not mentioned in docs) No shell execution found Suspicious artifacts and egress
https://virustotal.com SKILL.md:46
https://www.virustotal.com/api/v3/files/$ vet.ts:127
Dependencies and supply chain
| Package | Version | Source | Known vuln | Notes |
|---|---|---|---|---|
| bun | bundled | system | No | Bun runtime required |
File composition
vet.ts SKILL.md