erc-8004
Pass
Audited by Gen Agent Trust Hub on Mar 13, 2026
Risk Level: SAFECOMMAND_EXECUTIONEXTERNAL_DOWNLOADSDATA_EXFILTRATIONPROMPT_INJECTIONREMOTE_CODE_EXECUTION
Full Analysis
- [COMMAND_EXECUTION]: The skill relies on the
bankrCLI andjqfor core operations. - Executes
bankr promptto facilitate ETH bridging from Base to Mainnet and to submit registration transactions to Ethereum. - Uses
jqto parse JSON responses from RPC providers and Pinata. - [EXTERNAL_DOWNLOADS]: Fetches external data from the Ethereum blockchain and decentralized storage.
- Queries Ethereum JSON-RPC endpoints (Alchemy, LlamaRPC) to retrieve on-chain agent metadata.
- Downloads agent registration files from IPFS via Pinata and ipfs.io gateways, or from arbitrary HTTP URLs provided in the registry.
- [DATA_EXFILTRATION]: Uploads agent registration data to Pinata Cloud.
- The
upload-to-ipfs.shscript sends JSON profile data toapi.pinata.cloudusing a user-suppliedPINATA_JWTfor authentication. - [REMOTE_CODE_EXECUTION]: Utilizes
node -efor dynamic data processing. - Executes short Node.js snippets to encode Ethereum ABI calldata and decode hex strings returned from contract calls.
- [PROMPT_INJECTION]: Vulnerable to indirect prompt injection through external profile ingestion.
- Ingestion points:
scripts/get-agent.shfetches agent profiles from attacker-controlled or third-party IPFS CIDs and HTTP URLs. - Boundary markers: Absent; the fetched profile content is printed directly to the console or processed as JSON without instruction-filtering.
- Capability inventory: The agent has the ability to move funds (bridge ETH) and modify identity registries via the
bankrtool. - Sanitization: Profiles are formatted via
jqfor display, but no sanitization of natural language instructions within the metadata is performed.
Audit Metadata