T03 · Remote Payload Retrieval and Execution
- Location
references/foundry.md:6- Finding
Remote Installer Is Downloaded and Executed Without Verification
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This Web3 documentation skill is mostly purpose-aligned, but it includes copyable commands that can execute remote code or move real blockchain assets without enough safety framing.
Review this skill before installing. It is not malicious on inspection, but do not blindly copy its installer, deployment, transfer, or private-key examples. Prefer verified installers, testnets or local chains, wallet confirmation flows, pinned package versions, and carefully checked recipient addresses, network IDs, and amounts.
references/foundry.md:6Remote Installer Is Downloaded and Executed Without Verification
scripts/fetch-docs.js:75Documentation Fetcher Allows Cross-Origin Redirects and HTTPS Downgrade
curl -L https://foundry.paradigm.xyz | bash is a direct external script fetch and execution pattern. In a skill meant to provide actionable command-line guidance, this is more dangerous than passive reference text because it encourages immediate execution of network-fetched code, creating a meaningful supply-chain compromise path.
curl -L https://foundry.paradigm.xyz | bash && foundryup
forge init my-project && cd my-project
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
│ └── MyToken.ts ├── hardhat.config.ts ← main config ├── package.json └── .env ← RPC URLs, private keys (never commit)
## hardhat.config.ts
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
│ └── MyToken.ts ├── hardhat.config.ts ← main config ├── package.json └── .env ← RPC URLs, private keys (never commit)
## hardhat.config.ts
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
│ └── MyToken.ts ├── hardhat.config.ts ← main config ├── package.json └── .env ← RPC URLs, private keys (never commit)
## hardhat.config.ts
The trigger description is overly broad because it includes a catch-all for essentially any EVM or blockchain development question, which can cause the skill to activate outside its narrowly intended scope. Over-broad activation increases the chance that this skill unnecessarily overrides more appropriate skills or injects external-doc-fetching guidance into unrelated contexts, expanding the attack surface for misuse or prompt-routing errors.
This markdown reference includes write-contract and ETH transfer examples that can spend funds or change blockchain state, but it does not include any accompanying warning that these actions are irreversible and should be verified before use. Because this is a markdown file, the applicable check is whether the description warns about behaviors affecting user data, privacy, or system integrity; here, financial/system-impacting behavior is shown without such disclosure.
The documentation instructs users to pipe a downloaded script directly into bash, which executes remote code without prior inspection. Even if this is a common install pattern, it creates supply-chain and command-execution risk if the remote content, transport path, or hosting account is ever compromised.
The reference includes forge script ... --broadcast --verify and cast send ... --private-key $KEY, which can cause real on-chain state changes and spend funds if copied into a live environment. In a documentation skill for web3 developers, users are especially likely to paste commands directly, so the lack of warnings about mainnet usage, wallet selection, private key handling, and asset loss makes this a real safety issue.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
network: "base",
chainId: 8453,
urls: {
apiURL: "https://api.basescan.org/api",
browserURL: "https://basescan.org",
},
},
The example shows constructing an account directly from process.env.PRIVATE_KEY without any accompanying warning about secret handling, storage, or exposure risks. In a web3 documentation skill, readers may copy this pattern into scripts, CI jobs, or even frontend code, increasing the chance of private key leakage and compromise of wallet funds.
The examples perform state-changing blockchain operations such as token transfers and ETH sends without clearly warning that these actions are irreversible and may spend real assets if pointed at a live network. In EVM development docs, users often paste examples directly, so omission of side-effect warnings raises the risk of accidental mainnet transactions, asset loss, or unintended contract interactions.
This markdown file includes 'Write Contract' and 'Send ETH' examples that initiate token transfers and ETH transfers, but it does not include any warning that these actions can move funds, incur gas fees, or have irreversible on-chain effects. For markdown files, SQP-2 applies when the skill description omits warnings about behaviors that could affect user data, privacy, or system integrity; here the omitted disclosure concerns direct financial/system-impacting actions.
Detected: suspicious.generated_source_template_injection