T09 · Insecure Skill Coding Practices
- Location
scripts/konto.sh:2- Finding
Unvalidated API destination can disclose the bearer token
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is a straightforward helper for querying a personal finance API, with no hidden persistence or destructive behavior found.
Install only if you trust the Konto service and the configured KONTO_URL. Keep ~/.openclaw/secrets/konto.env private, use HTTPS, avoid sharing command output because it may contain financial details, and prefer the narrowest endpoint needed instead of broad summaries or long transaction histories.
scripts/konto.sh:2Unvalidated API destination can disclose the bearer token
This skill explicitly interacts with a personal finance API and exposes examples for retrieving banking, loan, investment, and transaction data from an external service, but it does not warn users that highly sensitive financial information will be transmitted off-host to remote endpoints. In this context, omission of a clear disclosure materially increases the risk of unintentional data exposure, especially because the examples encourage broad queries such as full summaries and transaction history.
This markdown file documents endpoints returning bank accounts, transactions, investments, assets, loans, and a full financial summary, which are all highly sensitive user data. The description explains how to access and use these endpoints but does not include any warning about handling personal financial information, privacy implications, or careful disclosure of results.
The quick reference explicitly instructs users to source a local secrets file and immediately use the loaded API key in authenticated requests, but it provides no warning about credential sensitivity, shell history, environment leakage, or safe secret handling. In an agent-skill context, this is more dangerous because users may copy commands verbatim, increasing the chance of exposing financial API credentials or unintentionally querying sensitive personal data.
The script sources secrets from a local environment file and uses the API key to send authenticated curl requests to a remote service. There is no confirmation prompt, logging, comment, or other user-facing disclosure in the file explaining that credentials will be loaded and account data transmitted over the network.
No suspicious patterns detected.