Back to skill

Security audit

01-exchange-skill(not official)

Security checks for vulnerabilities and agentic risk

Overview

This skill is mostly documentation for 01.xyz trading, but it includes live financial examples that can place orders, move collateral, or close positions without the confirmation controls it says are required.

Review this skill carefully before installing. Use it for read-only market monitoring only unless you are prepared to audit and wrap every trading action with explicit confirmation, devnet testing, fixed dependency versions, low-value wallets, hard limits, and independent checks before mainnet use.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
Findings (3)

T08 · Insecure Dependencies

Warning
Location
01xyz-developer-trading-basics.md:482
Finding

Unpinned Wallet-Signing and Trading Dependencies Create a Supply-Chain Risk

Content
View full analysis
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Error
Location
01xyz-developer-trading-basics.md:328
Finding

Fund-Affecting Examples Bypass the Skill's Mandatory Human-Confirmation Policy

Content
View full analysis
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Error
Location
01xyz-developer-risk-management.md:397
Finding

Automated Kill Switch Can Close the Entire Portfolio Without Human Approval

Content
View full analysis
killSwitch.trigger('Manual interrupt')); // Bind to risk triggers checkAccountHealth().then(health => { if (health.status === 'LIQUIDATION') { killSwitch.trigger('Liquidation imminent'); } }); ``` ### Technical Analysis The kill-switch example automatically cancels every open order and closes every position when it receives `SIGINT` or when `checkAccountHealth()` reports `LIQUIDATION`. This behavior contradicts the Skill's stated requirement that every trading action receive explicit human confirmation. It also lacks safeguards appropriate for a portfolio- ...[truncated 2448 chars]
Remediation
View remediation
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Rogue AgentSelf-Modification, Session Persistence
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (5)

Self-Modification

High
Category
Rogue Agent
Confidence
85% confidence
Finding

Skill modifies its own code, configuration, or behavior at runtime. Self-modification enables an agent to escalate privileges, disable safety constraints, or install persistent backdoors.

Content

Scanner excerpt · 01xyz-developer-README.md (reported line 214)May include surrounding context.

md
- Follow existing structure and style
- Test on devnet before submitting
- Update SKILL.md if adding capabilities
- Add safety warnings for gated features

## Resources

Credential Access

High
Category
Privilege Escalation
Confidence
60% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · 01xyz-developer-trading-basics.md (reported line 497)May include surrounding context.

Environment Variables

bash
# .env
LOCAL_API_URL=http://localhost:3000
SOLANA_RPC_URL=https://api.mainnet-beta.solana.com
WALLET_ADDRESS=YourAddressHere

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

This is a real logic flaw in safety-critical sample code. The disarm() method logs that trading is resumed, but it sets this.armed = false, which leaves the kill switch disabled rather than restoring normal armed state; after an operator believes protections are back on, a later emergency may not trigger shutdown behavior. In a trading/risk-management skill, misleading kill-switch semantics materially increase operational risk during volatile conditions.

Content

No source excerpt is available for this finding.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
75% confidence
Finding

Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Content

Scanner excerpt · 01xyz-developer-safety-first.md (reported line 63)May include surrounding context.

md
❌ **Access your private keys** — We never have them  
❌ **Sign transactions** — Only your local API can sign  
❌ **Move your funds** — Impossible without your keys  
❌ **Place orders without confirmation** — Safety guardrails prevent this  
❌ **Guarantee profits** — No financial advice, all trading is risky  
❌ **Prevent liquidation** — We can warn, but you must act  
❌ **Reverse transactions** — Blockchain transactions are final

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

This SDK reference documents high-risk trading actions such as market orders, leverage, close-all positions, deposits, withdrawals, and bracket orders without any explicit warnings about financial loss, liquidation risk, or irreversible account effects. In a developer skill, omission of safety guidance can enable downstream agents or developers to automate destructive trading behavior without appropriate guardrails, confirmations, or environment restrictions.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.