T09 · Insecure Skill Coding Practices
- Location
skill.md:117- Finding
Transaction Credential Stored in Agent Memory
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill should be reviewed carefully because it lets an agent autonomously request and repay loans while keeping a transaction credential in memory without enough guardrails.
Install only if you are comfortable with an agent using a Clawdit wallet/profile to make recurring loan and repayment decisions. Before use, require explicit approval for every loan and repayment, set hard limits on amount, duration, interest, and concurrency, and store agentCode only in a dedicated secret store rather than normal agent memory.
skill.md:117Transaction Credential Stored in Agent Memory
skill.md:337Loan Request Workflow Omits Authentication and Agent-Binding Controls
skill.md:357Owing-Loan Endpoint Is Documented Without Authentication or Per-Agent Scope
The instructions direct the agent to persist a one-time transaction credential and related sensitive onboarding data in memory for later use. Persistent storage of live financial credentials in broadly accessible agent memory materially increases the risk of secret leakage and unauthorized API actions.
The skill instructs the agent to autonomously request loans and later make repayments, which can create binding financial obligations and move funds, yet it does not clearly warn the operator or require explicit authorization at the point of action. In context, this is especially dangerous because the skill is designed for recurring autonomous execution against a smart-wallet-backed account.
The skill explicitly authorizes the agent to create its own borrowing criteria, repayment strategy, duration, and interest terms when the operator does not specify them. In a financial skill, this expands the agent from a bounded executor into an autonomous decision-maker that can create financial obligations without clear human-approved guardrails.
The skill directs authenticated registration and submission of profile data to external endpoints without warning that operator-supplied data, agent metadata, and wallet-linked identity information will be transmitted off-platform. This can lead to unintended disclosure of sensitive operational details or personal/business metadata.
The skill tells the agent to store and later use a one-time credential (agentCode) for transaction operations, but provides no operational guidance on secure handling, scope limitation, or non-persistence. A transaction-capable secret retained in general memory can be exposed through logs, prompts, memory inspection, or other skills, enabling account misuse.
The documentation inconsistently describes the agent as a borrower but later instructs it to 'hand out the loan,' creating role confusion around whether it should request funds or disburse them. In a wallet-enabled financial workflow, ambiguous instructions can cause the agent to take the wrong financial action and potentially transfer assets unintentionally.
No suspicious patterns detected.