T09 · Insecure Skill Coding Practices
- Location
scripts/skill_earnings_tracker.py:19- Finding
Plaintext Storage of Earnings Data Contrary to Encryption Claims
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill mostly does what it says, but it stores and exports earnings records in plaintext while claiming the data is encrypted.
Review this skill before installing if you plan to track real earnings, credits, customer information, or private notes. Treat ~/.openclaw/earnings and exported reports as plaintext files, avoid entering secrets or personal data in notes, and protect or delete exports manually.
scripts/skill_earnings_tracker.py:19Plaintext Storage of Earnings Data Contrary to Encryption Claims
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.
### Month 2+: Scale
- Cross-promote on social
- Create companion skills
- Consider premium tier
## Security & Privacy
subprocess module calls execute external commands. Without careful input validation, this enables command injection.
import subprocess
try:
result = subprocess.run(
["clawhub", "explore", "--limit", "100"],
capture_output=True,
text=True
The skill explicitly describes persistent local storage of earnings data and an export function, but it does not clearly warn users that these files may contain sensitive business information and will remain on disk unless manually protected or deleted. While the data is not obviously high-risk personal data, marketplace revenue, usage, and portfolio information can still be sensitive and may be exposed through weak filesystem permissions, backups, or accidental sharing of exported files.
No suspicious patterns detected.