Credential Access
High
- Category
- Privilege Escalation
- Content
- Check key exists: - `node {baseDir}/scripts/envsafe.js --file /home/node/.openclaw/.env exists OPENAI_API_KEY` - Set/update key (safe stdin, default): - `printf '%s' 'NEW_VALUE' | node {baseDir}/scripts/envsafe.js --file /home/node/.openclaw/.env set OPENAI_API_KEY --stdin` - Add new key with mandatory comment (recommended): - `printf '%s' 'NEW_VALUE' | node {baseDir}/scripts/envsafe.js --file /home/node/.openclaw/.env set NEW_PROVIDER_API_KEY --stdin --comment "Provider key for xxx integration"` - Set only when missing:- Confidence
- 70% confidence
- Finding
- Although the skill prefers stdin over argv, the example uses `printf '%s' 'NEW_VALUE' | ... set ... --stdin`, which embeds the secret literal directly in the shell command. In real use, replacing NEW_VALUE with an actual secret can leak sensitive material into shell history, process audit trails, transcripts, or copied chat content, undermining the stated secret-safe posture.
