T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:36- Finding
Unverified Remote Script Is Piped Directly into Bash
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill matches its stated crypto-swap purpose, but it asks users to run high-impact wallet transactions with weak safeguards and an unverified remote installer.
Review carefully before installing. Use only a dedicated low-value wallet, avoid pasting private keys into shared shells, install Foundry through a verified channel, approve only exact amounts for short durations, verify spender/router addresses and decoded calldata, and require explicit confirmation before any `cast send` command.
SKILL.md:36Unverified Remote Script Is Piped Directly into Bash
SKILL.md:88Maximum and Long-Lived Token Allowances Violate Least Privilege
SKILL.md:105External API-Derived Transaction Target and Calldata Are Broadcast Without Semantic Validation
Referenced artifact was not completely inspected
Use this `SKILL.md` alone. No other files are required.
Fetching and executing a remote script with curl -L https://foundry.paradigm.xyz | bash is a classic high-risk supply-chain pattern. If the remote content, DNS, TLS path, or hosting account is compromised, arbitrary code can run on the user's machine and steal private keys, alter transaction commands, or persist malware.
Install if missing:
curl -L https://foundry.paradigm.xyz | bash
foundryup
The shell pipe into bash enables direct execution of unreviewed remote content, chaining network retrieval to code execution in one step. In a crypto-operations skill, this is especially dangerous because a compromised install path can immediately capture secrets and manipulate subsequent approval or swap commands.
Install if missing:
curl -L https://foundry.paradigm.xyz | bash
foundryup
The skill instructs users to install Foundry via a remote shell pipeline (curl ... | bash), which executes network-fetched code without verification. In a skill that already handles private keys and on-chain asset movement, this creates a serious supply-chain compromise path that could lead to wallet or host takeover.
The skill requires sensitive secrets (PRIVATE_KEY, UNISWAP_API_KEY) but does not include handling guidance such as avoiding shell history leakage, using least-privilege wallets, or preventing logging/exfiltration. Because the same document also includes network calls and transaction execution, poor secret hygiene here can directly lead to wallet compromise or unauthorized API use.
The skill provides direct transfer and swap broadcast commands that move funds irreversibly on-chain, but it lacks an explicit warning or confirmation step about financial loss, recipient/address mistakes, slippage, and approval risk. In this context, an agent or operator could execute destructive transactions without appreciating that approval and broadcast steps can permanently expose or transfer assets.
The quote request sends transaction intent metadata, wallet address, token pair, amount, and an API key to an external Uniswap endpoint. While external quoting is expected for this skill's purpose, it still exposes operational and financial metadata to a third party and could enable tracking or misuse if users are not warned.
curl -sS https://trade-api.gateway.uniswap.org/v1/quote \
-H 'content-type: application/json' \
-H "x-api-key: $UNISWAP_API_KEY" \
--data '{