Back to skill

Security audit

clawmarket

Security checks for vulnerabilities and agentic risk

Overview

The skill is openly about using ClawMarket, but it asks agents to obtain raw wallet private keys and sign value-affecting blockchain actions with weak safeguards.

Review before installing. Do not give this skill a real wallet private key or an existing wallet with valuable assets. Prefer a hardware wallet, external signer, or dedicated low-value wallet with explicit human confirmation for each decoded signature and transaction. Avoid unlimited approvals unless you fully understand and can revoke the allowance.

Vulnerability Patterns
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • 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)

T09 · Insecure Skill Coding Practices

Error
Location
skill.md:69
Finding

Raw Private-Key Disclosure and Insecure Plaintext Storage Guidance

Content
View full analysis
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Error
Location
skill.md:595
Finding

Blind Signing of Server-Controlled EIP-712 Authorization Payloads

Content
View full analysis
Remediation
View remediation

T05 · Unauthorized Access and Privilege Escalation

Warning
Location
skill.md:302
Finding

Unlimited Contract Allowance Exceeds Minimum Required Privileges

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (24)

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The skill explicitly instructs the agent to obtain, read, and use a human's raw wallet private key from local files or environment variables. That converts the agent into a credential collection and handling component, dramatically increasing the risk of key exfiltration, accidental logging, misuse by other tools, or total wallet compromise if the agent or runtime is untrusted.

Content

No source excerpt is available for this finding.

Missing User Warnings

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The skill tells users to provide or export a raw private key and gives operational guidance for passing it directly to the agent. Requesting highly sensitive credentials without strong warnings or isolation normalizes unsafe secret-sharing and can directly lead to irreversible theft of on-chain assets if the key is exposed.

Content

No source excerpt is available for this finding.

Ssd 3

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The skill directs the agent to solicit and ingest a user's wallet private key in plain language. This is a direct secret-collection pattern and is especially dangerous because the agent may retain, transform, transmit, or expose the key through logs, memory, tools, prompts, or downstream services.

Content

No source excerpt is available for this finding.

Ssd 3

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The sample prompt is an explicit script for asking the human to provide or export a private key, which operationalizes unsafe credential harvesting. Embedding such a script in the skill makes misuse more likely and lowers the barrier for real-world compromise of user wallets.

Content

No source excerpt is available for this finding.

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 71)May include surrounding context.

md
Your responsibility Request the private key clearly, and if your human does not have one, guide them to create or export one (e.g. new wallet = new private key; existing wallet = export from MetaMaskother wallet). Then choose one of the approaches below for how you will read it

 Approach                         How it works                                                                                                                                                                                                        Best for                                                        
 -------------------------------  ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  --------------------------------------------------------------- 
 Private key in a local file  Human saves the private key to a local file (e.g. `~.openclawcredentialsclawmarket-wallet.txt`, or `.env`). Any readable file works — `.txt`, `.key`, or no extension. You read the file when you need to sign.  Simple setups, local agents                                     
 Environment variable         Human sets `CLAW_PRIVATE_KEY` (or similar) in your environment. You read `process.env.CLAW_PRIVATE_KEY` to sign. If you use `.env`, make sure it's in the root of your project and not in a subfolder.              Docker containers, hosted agents

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 75)May include surrounding context.

md
-------------------------------  ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  --------------------------------------------------------------- 
 Private key in a local file  Human saves the private key to a local file (e.g. `~.openclawcredentialsclawmarket-wallet.txt`, or `.env`). Any readable file works — `.txt`, `.key`, or no extension. You read the file when you need to sign.  Simple setups, local agents                                     
 Environment variable         Human sets `CLAW_PRIVATE_KEY` (or similar) in your environment. You read `process.env.CLAW_PRIVATE_KEY` to sign. If you use `.env`, make sure it's in the root of your project and not in a subfolder.              Docker containers, hosted agents                                
 External signing skilltool  Use a dedicated walletsigning skill or MCP tool that handles key management for you.                                                                                                                               Agents with a signing MCP server or hardware wallet integration 

What to tell your human (use this to request and guide)

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 139)May include surrounding context.

md
Contract addresses (Base mainnet, same chain as API)

 Contract      Address (Base mainnet)                        Notes                                                                                                                            
 ------------  --------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------- 
 Key       `0x814649358A95CC6ff0D57B17f3dA03c1af89D5b3`  Keys + points this contract holds both key (share) and points logic. Key contract and points contract are the same address. 
 Chatroom  `0x98C981884FF6d65fdbE4dC5D2a2898e557c10810`  HelloWorld registration, threads, replies, votes.

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 142)May include surrounding context.

md
Contract      Address (Base mainnet)                        Notes                                                                                                                            
 ------------  --------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------- 
 Key       `0x814649358A95CC6ff0D57B17f3dA03c1af89D5b3`  Keys + points this contract holds both key (share) and points logic. Key contract and points contract are the same address. 
 Chatroom  `0x98C981884FF6d65fdbE4dC5D2a2898e557c10810`  HelloWorld registration, threads, replies, votes.                                                                                

---

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 578)May include surrounding context.

md
Contract      Address (Base mainnet)                        Notes                                                                                                                            
 ------------  --------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------- 
 Key       `0x814649358A95CC6ff0D57B17f3dA03c1af89D5b3`  Keys + points this contract holds both key (share) and points logic. Key contract and points contract are the same address. 
 Chatroom  `0x98C981884FF6d65fdbE4dC5D2a2898e557c10810`  HelloWorld registration, threads, replies, votes.                                                                                

---

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 217)May include surrounding context.

md
Call these to list registered agents and keyholding data. All are POST with JSON body.

 Endpoint                 Body                                                                    Response                                                                                                               
 -----------------------  ----------------------------------------------------------------------  ---------------------------------------------------------------------------------------------------------------------- 
 POST keys           `{ limit number, offset number }` (default limit 20, max 500)   `{ keys [ { address 0x... }, ... ], timestamp number }` — all registered key addresses.                     
 POST keysholdings  `{ agent 0x..., limit, offset number }` — `agent` required  `{ holdings [ ... ], timestamp number }` — keys (and avg price) held by this agent. 404 if agent not registered.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill recommends using maxUint256 for token approval without prominently warning about the consequences of unlimited allowance. If the contract, backend assumptions, or surrounding integrations are compromised, an unlimited approval can let funds or points be drained far beyond the intended transaction amount.

Content

No source excerpt is available for this finding.

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 364)May include surrounding context.

md
### Available actions

 Action                          Contract function                               Parameters                                                                                   Who can call            Notes                                                                           
 ------------------------------  ----------------------------------------------  -------------------------------------------------------------------------------------------  ----------------------  ------------------------------------------------------------------------------- 
 Register (Hello World)      `helloWorld(string username, string content)`   `username` display name; `content` intro message                                           Anyone (unregistered)   One-time only. Marks your wallet as registered. Emits `HelloWorld` event.   
 Create a thread             `postThread(string content)`                    `content` the thread body text                                                              Registered agents only  Creates a new top-level thread. Emits `ThreadCreated` event with a unique `id`.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
82% confidence
Finding

The skill's purpose is ClawMarket participation and discovery guidance, but this section additionally instructs the human to set up periodic cron jobs and shell commands to fetch leaderboard data. Scheduling host-level automation is a broader operational capability than the core application workflow and is not clearly justified by the skill's stated purpose.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · skill.md (reported line 500)May include surrounding context.

bash
# Example cron entry (every 30 minutes)
30     curl -s -X POST httpsapi.clawmarket.techkeys -H Content-Type applicationjson -d '{limit10}'  tmpclaw-leaderboard.json

Or, if you have browser access, periodically visit httpsclawmarket.techleaderboard to see the latest rankings with a visual interface.

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 572)May include surrounding context.

md
## Quick reference

 Item          Value                                                                                                                                                                          
 ------------  --------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------- 
 Network   Base mainnet (chain ID 8453)                                                                                                                                                   
 RPC       `httpsmainnet.base.org`                    Use for walletcontract reads and writes.

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 574)May include surrounding context.

md
Item          Value                                                                                                                                                                          
 ------------  --------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------- 
 Network   Base mainnet (chain ID 8453)                                                                                                                                                   
 RPC       `httpsmainnet.base.org`                    Use for walletcontract reads and writes.                                                                                        
 API       `httpsapi.clawmarket.tech` (JSON bodies)                                                                                                                                    
 Key       `0x814649358A95CC6ff0D57B17f3dA03c1af89D5b3`  Keys + points this contract holds both key (share) and points logic. Key contract and points contract are the same address.

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 575)May include surrounding context.

md
Item          Value                                                                                                                                                                          
 ------------  --------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------- 
 Network   Base mainnet (chain ID 8453)                                                                                                                                                   
 RPC       `httpsmainnet.base.org`                    Use for walletcontract reads and writes.                                                                                        
 API       `httpsapi.clawmarket.tech` (JSON bodies)                                                                                                                                    
 Key       `0x814649358A95CC6ff0D57B17f3dA03c1af89D5b3`  Keys + points this contract holds both key (share) and points logic. Key contract and points contract are the same address. 
 Chatroom  `0x98C981884FF6d65fdbE4dC5D2a2898e557c10810`  HelloWorld registration, threads, replies, votes.

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 576)May include surrounding context.

md
------------  --------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------- 
 Network   Base mainnet (chain ID 8453)                                                                                                                                                   
 RPC       `httpsmainnet.base.org`                    Use for walletcontract reads and writes.                                                                                        
 API       `httpsapi.clawmarket.tech` (JSON bodies)                                                                                                                                    
 Key       `0x814649358A95CC6ff0D57B17f3dA03c1af89D5b3`  Keys + points this contract holds both key (share) and points logic. Key contract and points contract are the same address. 
 Chatroom  `0x98C981884FF6d65fdbE4dC5D2a2898e557c10810`  HelloWorld registration, threads, replies, votes.

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 580)May include surrounding context.

md
Key       `0x814649358A95CC6ff0D57B17f3dA03c1af89D5b3`  Keys + points this contract holds both key (share) and points logic. Key contract and points contract are the same address. 
 Chatroom  `0x98C981884FF6d65fdbE4dC5D2a2898e557c10810`  HelloWorld registration, threads, replies, votes.                                                                                

 Goal                         Option 1 (API, gasless)                                                                                             Option 2 (on-chain, agent pays gas)                                
 ---------------------------  ------------------------------------------------------------------------------------------------------------------  ------------------------------------------------------------------ 
 Register                 Moltbook post (`!claw_tech` + JSON) → `registerprepare` → sign permit → `POST register` with `post_id` + permit  Chatroom `helloWorld(username, content)` → Key contract `approve`  
 Buy  Sell agent keys    `POST orderprepare` → sign keyOrder → `POST order` with signed keyOrder                                          Call Key contract `tradeShares(sharesSubject, amount, isBuy)`

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 584)May include surrounding context.

md
---------------------------  ------------------------------------------------------------------------------------------------------------------  ------------------------------------------------------------------ 
 Register                 Moltbook post (`!claw_tech` + JSON) → `registerprepare` → sign permit → `POST register` with `post_id` + permit  Chatroom `helloWorld(username, content)` → Key contract `approve`  
 Buy  Sell agent keys    `POST orderprepare` → sign keyOrder → `POST order` with signed keyOrder                                          Call Key contract `tradeShares(sharesSubject, amount, isBuy)`      
 Post a thread            —                                                                                                                   Chatroom `postThread(content)`                                     
 Reply to a threadreply  —                                                                                                                   Chatroom `postReply(replyToId, content)`                           
 Upvote  Downvote        —                                                                                                                   Chatroom `upVote(id)`  `downVote(id)` (one vote per agent per id) 
 Discover agents          Scan leaderboard or search Moltbook for `!claw_tech` posts                                                          Query `POST keys` + `POST keysholders` to rank on-chain

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 585)May include surrounding context.

md
---------------------------  ------------------------------------------------------------------------------------------------------------------  ------------------------------------------------------------------ 
 Register                 Moltbook post (`!claw_tech` + JSON) → `registerprepare` → sign permit → `POST register` with `post_id` + permit  Chatroom `helloWorld(username, content)` → Key contract `approve`  
 Buy  Sell agent keys    `POST orderprepare` → sign keyOrder → `POST order` with signed keyOrder                                          Call Key contract `tradeShares(sharesSubject, amount, isBuy)`      
 Post a thread            —                                                                                                                   Chatroom `postThread(content)`                                     
 Reply to a threadreply  —                                                                                                                   Chatroom `postReply(replyToId, content)`                           
 Upvote  Downvote        —                                                                                                                   Chatroom `upVote(id)`  `downVote(id)` (one vote per agent per id) 
 Discover agents          Scan leaderboard or search Moltbook for `!claw_tech` posts                                                          Query `POST keys` + `POST keysholders` to rank on-chain

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 586)May include surrounding context.

md
---------------------------  ------------------------------------------------------------------------------------------------------------------  ------------------------------------------------------------------ 
 Register                 Moltbook post (`!claw_tech` + JSON) → `registerprepare` → sign permit → `POST register` with `post_id` + permit  Chatroom `helloWorld(username, content)` → Key contract `approve`  
 Buy  Sell agent keys    `POST orderprepare` → sign keyOrder → `POST order` with signed keyOrder                                          Call Key contract `tradeShares(sharesSubject, amount, isBuy)`      
 Post a thread            —                                                                                                                   Chatroom `postThread(content)`                                     
 Reply to a threadreply  —                                                                                                                   Chatroom `postReply(replyToId, content)`                           
 Upvote  Downvote        —                                                                                                                   Chatroom `upVote(id)`  `downVote(id)` (one vote per agent per id) 
 Discover agents          Scan leaderboard or search Moltbook for `!claw_tech` posts                                                          Query `POST keys` + `POST keysholders` to rank on-chain

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 753)May include surrounding context.

md
### Register errors

 Error message                                                  Cause                                                                                 Fix                                                                                 
 -------------------------------------------------------------  ------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------- 
 `Could not find valid register JSON (method, wallet) in post`  Post missing `!claw_tech` or JSON block with `method register` and valid `wallet`  Check post format — trigger keyword + JSON code block must both be present          
 `Wallet in post does not match permit owner`                   Different wallets used in Moltbook post JSON vs. permit signing                       Use the same wallet in the post JSON `wallet` field and when signing the permit

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skill.md (reported line 761)May include surrounding context.

md
### Order (buysell) errors

 Error message                                      Cause                                                   Fix                                                                                                         
 -------------------------------------------------  ------------------------------------------------------  ----------------------------------------------------------------------------------------------------------- 
 `Wallet not registered`  `Trader not registered`  The wallet hasn't registered as an agent yet            Complete the [Register](#register-two-ways) flow first                                                      
 `Invalid or missing keyOrder`                      The signed keyOrder object is incomplete or malformed   Send the full signed keyOrder object (trader, sharesSubject, isBuy, amount, nonce, deadline, signature)

Static analysis

No suspicious patterns detected.