T09 · Insecure Skill Coding Practices
- Location
SKILL.md:28- Finding
Sensitive credentials are exposed through Agent conversations and command-line arguments
- Content
View full analysis
","password":""}' ``` ``` `SKILL.md:153-158`: ```markdown Ask user for: 1. **Bucket name** — their bucket on aiozstorage.network 2. **12-word seed phrase** — BIP39 passphrase from bucket creation IMPORTANT: AIOZ Storage does NOT store passphrases. If lost, bucket access is lost forever. ``` `SKILL.md:187-213`: ```bash npx ts-node {baseDir}/grant-cli.ts \ --mode per-bucket \ --zkey "" \ --account "" \ --url w3s \ --duration 0 \ --bucket "" \ --passphrase "<12_WORD_SEED_PHRASE>" \ --permissions 1,2,3 \ --output json \ --quiet ``` ```bash npx ts-node {baseDir}/grant-cli.ts \ --mode per-bucket \ --zkey "" \ --account "" \ --url w3s \ --duration 0 \ --bucket "" \ --passphrase "<12_WORD_SEED_PHRASE>" \ --permissions 1,3 \ --output json \ --quiet ``` ### Technical Analysis The workflow tells the Agent to ask the user for an account password and a bucket seed phrase. It then interpolates the password into a `curl` command and passes the root ZKey and seed phrase as command-line arguments to `ts-node`. These values can consequently be retained in Agent conversation transcripts, shell command history, process-monitoring output, execution telemetry, diagnostic logs, or command audit records. Command-line arguments may also be visible to other processes or users where operating-system process inspectio ...[truncated 1516 chars]- Remediation
View remediation
