Back to skill

Security audit

Orderly Onboarding

Security checks for vulnerabilities and agentic risk

Overview

This Orderly onboarding skill is coherent, but it recommends unpinned package execution and broad persistent agent configuration that users should review before installing.

Install only the specific Orderly pieces you need, prefer project-local setup, review any MCP config diff before applying it, avoid all-agent global installs, and pin package versions instead of relying on `npx` defaults or `@latest`.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (2)

T08 · Insecure Dependencies

Error
Location
SKILL.md:73
Finding
Unpinned MCP Package Is Downloaded and Executed Through npx<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:73-152` **Vulnerability Type**: Unpinned third-party package execution **Risk Level**: High ### Complete Code Snippet ```bash npx @orderly.network/mcp-server init --client <client> ``` ```json { "mcpServers": { "orderly": { "command": "npx", "args": ["@orderly.network/mcp-server@latest"] } } } ``` ```json { "mcpServers": { "orderly": { "command": "npx", "args": ["@orderly.network/mcp-server@latest"] } } } ``` ```json { "servers": { "orderly": { "command": "npx", "args": ["@orderly.network/mcp-server@latest"] } } } ``` ```json { "$schema": "https://opencode.ai/config.json", "mcp": { "orderly": { "type": "local", "command": ["npx", "@orderly.network/mcp-server@latest"], "enabled": true } } } ``` ```toml [mcp_servers.orderly] command = "npx" args = ["@orderly.network/mcp-server@latest"] ``` ### Technical Analysis The documented configurations instruct AI clients to use `npx` to retrieve and execute `@orderly.network/mcp-server@latest`. The `@latest` tag is mutable and can resolve to package contents that differ from those reviewed when this skill was published. The initial installation command is also unversioned and therefore resolves through the registry at execution time. Because these configurations are stored in MCP client configuration files, execution is not limited to a one-time setup action. A configured client may invoke the package again in later sessions. The package then runs as the current operating-system user and receives whatever filesystem, environment, network, and process access is available to that user and the hosting AI client. No malicious package contents were present in the audited artifact, and compromise of the referenced package was not establis ...[truncated 1629 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Replace every `@latest` reference with an exact, reviewed package version, such as `@orderly.network/mcp-server@X.Y.Z`. 2. Pin the package and transitive dependency graph through a committed lockfile where the client supports it. 3. Verify npm package provenance, signatures, and integrity hashes before installation or execution. 4. Install the reviewed package ahead of time and configure the MCP client to invoke a fixed local binary rather than dynamically resolving it through `npx`. 5. Disable automatic package downloads in persistent MCP configurations. 6. Run the MCP server in a sandbox or container with access restricted to the required project directories and network destinations. 7. Document the server's required filesystem, environment-variable, network, and subprocess permissions. 8. Establish a controlled upgrade process in which new versions are reviewed and tested before the pinned version is changed. ]]>

T08 · Insecure Dependencies

Warning
Location
SKILL.md:170
Finding
Global All-Agent Installation of Unpinned External Skills<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:170-196` **Vulnerability Type**: Overly broad installation of unreviewed external dependencies **Risk Level**: Medium ### Complete Code Snippet ```bash npx skills add OrderlyNetwork/skills --all --agent '*' -g ``` ```bash npx skills add OrderlyNetwork/skills --all ``` ```bash # List available skills npx skills add OrderlyNetwork/skills --list # Install specific skill npx skills add OrderlyNetwork/skills --skill orderly-trading-orders # Install multiple skills npx skills add OrderlyNetwork/skills --skill orderly-api-authentication --skill orderly-trading-orders # Install for specific agent npx skills add OrderlyNetwork/skills --all --agent claude-code -g ``` ### Technical Analysis The recommended command invokes an unpinned `skills` package through `npx` and imports content from the external `OrderlyNetwork/skills` repository. The most permissive variant combines `--all`, `--agent '*'`, and `-g`, installing every available external skill globally for every supported agent. Neither the `skills` CLI version nor a specific commit of the external skills repository is pinned. Consequently, the installed content can differ from the content that existed when this onboarding file was audited. The imported skills are not included in the project artifact and therefore could not be inspected during this audit. The global and all-agent scope also violates least-scope principles. A compromised or unexpectedly modified upstream source could distribute persistent instructions across unrelated projects and agent sessions. Depending on the external skill system's supported content, imported material could influence tool calls, request installation of further components, or cause execution of bundled actions. ### Attack Path 1. An attacker compromises the unpinned `skills` CLI package, the `OrderlyNetwork/skills` repository, a maintainer account, or th ...[truncated 1416 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Do not recommend `--all --agent '*' -g` as the default installation method. 2. Install only the specific skill needed for the current task and only for the intended agent. 3. Prefer project-local installation so changes remain isolated, reviewable, and removable with the project. 4. Pin the `skills` CLI to an exact reviewed version. 5. Pin `OrderlyNetwork/skills` to a specific reviewed commit, release tag, or cryptographically verified artifact. 6. Review every imported skill, including referenced scripts and external commands, before enabling it. 7. Maintain an allowlist of approved skills rather than importing all present and future repository content. 8. Require explicit confirmation before a skill may execute commands, access credentials, communicate externally, or modify agent configuration. 9. Periodically inventory global agent directories and remove stale or unapproved skills. ]]>
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (14)

Agent Config Directory Access

High
Category
Agent Snooping
Content
| Claude Code | `--client claude`   | `.mcp.json`            |
| Cursor      | `--client cursor`   | `.cursor/mcp.json`     |
| VS Code     | `--client vscode`   | `.vscode/mcp.json`     |
| Codex       | `--client codex`    | `~/.codex/config.toml` |
| OpenCode    | `--client opencode` | `.opencode/mcp.json`   |

**Manual Configuration:**
Confidence
90% confidence
Finding
The skill explicitly identifies a user-level agent configuration path (`~/.codex/config.toml`) as a target for modification, which is sensitive because changes there affect agent behavior across projects. While the content itself is not overtly malicious, onboarding instructions that normalize editing global agent config can enable persistent tool injection or broaden the impact of any compromised command.

Agent Config Directory Access

High
Category
Agent Snooping
Content
}
```

**Codex** (`~/.codex/config.toml`):

```toml
[mcp_servers.orderly]
Confidence
90% confidence
Finding
This section provides manual configuration content for `~/.codex/config.toml`, reinforcing direct edits to a global agent config file. Because global agent configuration can introduce persistent execution of external tools in future sessions, misuse or compromise of this setup has a larger-than-local impact.

Missing User Warnings

Medium
Confidence
96% confidence
Finding
The skill instructs users to run remote package installation commands and to add configuration blocks into AI client config files, but it does not clearly warn that these steps execute third-party code and modify local tooling behavior. In an onboarding skill, users are especially likely to follow such steps verbatim, which makes the omission more dangerous.

Rp1

Medium
Category
MCP Rug Pull
Confidence
95% confidence
Finding
The skill instructs users to execute an NPX package without pinning a specific version, which allows the fetched code to change over time and creates a supply-chain risk if the package is compromised or a malicious version is published. In this context, the command is presented as a recommended first step for setup, making accidental execution by users more likely.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding
The command uses `npx skills` without pinning the package version, so execution depends on whatever version is currently resolved at runtime. Because this command installs skills globally and is explicitly recommended, it exposes users to mutable remote code execution and potential supply-chain compromise.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding
This local install example still invokes `npx skills` without a version pin, so users execute whatever package version is current at the time of use. Even though the intent appears instructional, the result is the same supply-chain and remote code execution exposure.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding
The `--list` example still relies on an unpinned NPX package, meaning even a seemingly harmless listing command may execute changed or malicious code from the package registry. Because users may consider list operations low risk, this can lower their caution and increase exploitability.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding
This specific-skill install example uses an unpinned `npx skills` invocation, creating the same mutable remote execution risk as the other examples. The command directly encourages installation of additional content into the environment, increasing the blast radius if the package is malicious.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding
Installing multiple skills through an unpinned NPX package exposes users to unreviewed package changes at execution time. In a skill whose purpose is onboarding, these commands are likely to be copied verbatim, making the unsafe pattern materially risky.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding
This agent-specific global install again uses `npx skills` without a fixed version, preserving the same supply-chain risk while also targeting broader user environment changes via global installation. Global scope increases impact if the fetched code is malicious.

External Transmission

Medium
Category
Data Exfiltration
Content
Orderly supports multiple EVM and non-EVM chains. To get the current list of supported networks with their chain IDs, vault addresses, and RPC endpoints:

```
GET https://api.orderly.org/v1/public/chain_info
```

This endpoint returns all mainnet and testnet chains currently supported by Orderly, including Arbitrum, Optimism, Base, Ethereum, Polygon, Mantle, Solana, Sei, Avalanche, BSC, Abstract, and more.
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Rp1

Medium
Category
MCP Rug Pull
Confidence
95% confidence
Finding
The recommended next-step command again tells users to run `npx @orderly.network/mcp-server init` without pinning, exposing them to mutable remote code execution. Repetition throughout the document reinforces unsafe behavior and increases the chance users will run it without scrutiny.

Rp1

Medium
Category
MCP Rug Pull
Confidence
95% confidence
Finding
This white-label DEX workflow repeats the unpinned NPX invocation, which carries the same supply-chain risk as earlier references. Because it is framed as a prerequisite step, users may execute it early and implicitly trust the resulting configuration changes.

Rp1

Medium
Category
MCP Rug Pull
Confidence
95% confidence
Finding
The troubleshooting section still recommends the same unpinned MCP server command, so even users seeking help are steered toward unsafe package execution. Recommending an unpinned package in multiple contexts suggests poor security hygiene rather than a one-off omission.

Static analysis

No suspicious patterns detected.