Back to skill

Security audit

ORBCAFE Pivot + AINav

Security checks for vulnerabilities and agentic risk

Overview

This skill is a focused ORBCAFE UI implementation guide with no hidden code or persistence, but users should review its npm install step and voice/preset configuration.

Install this only in a project where ORBCAFE UI, MUI, and voice navigation are intended. Prefer pinned dependency versions or an existing lockfile, review any generated ASR endpoint/auth wiring, and keep preset persistence scoped to the intended user or server-side business data store.

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 (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:18
Finding
Mandatory Installation of Unpinned Third-Party Dependencies## Vulnerability Details **File Location**: `SKILL.md`, lines 18–22 **Vulnerability Type**: Unpinned third-party dependencies and unsafe supply-chain resolution **Risk Level**: Medium ### Vulnerable Code ```markdown ## Installation and Bootstrapping (Mandatory) ```bash npm install orbcafe-ui @mui/material @mui/icons-material @mui/x-date-pickers @emotion/react @emotion/styled dayjs ``` ``` ### Technical Analysis The skill makes installation of several npm packages mandatory but does not pin them to reviewed, exact versions. No lockfile or package-integrity policy is included in the audited project. As a result, executing this command resolves package versions and transitive dependencies from the configured npm registry at installation time. The installed artifacts can therefore differ from those originally reviewed. npm packages may also define lifecycle scripts that execute with the privileges of the user running the installation. This creates supply-chain exposure if a dependency or transitive dependency is compromised, replaced with a malicious release, resolved from an attacker-controlled registry, or changes incompatibly after the skill is published. The finding does not establish that any named package is currently malicious; it identifies the unsafe dependency-resolution practice. ### Attack Path 1. An attacker compromises a named npm package, one of its transitive dependencies, or a registry used by the target environment. 2. The attacker publishes a malicious version that satisfies the unpinned installation request. 3. A user or agent follows the skill's mandatory installation instruction. 4. npm resolves and downloads the attacker-controlled release. 5. Malicious lifecycle code executes during installation, or malicious runtime code executes when the generated application imports the package. 6. The payload operates with the permissions of the npm process or application process. ### Impact Assessment ...[truncated 603 chars]
Remediation
## Remediation Suggestions 1. Pin every direct dependency to an exact, reviewed version rather than allowing mutable registry resolution. 2. Provide a committed lockfile and require reproducible installation with `npm ci`. 3. Validate lockfile integrity in CI and reject unexpected dependency-tree changes. 4. Document the trusted registry and enforce it through project-level npm configuration. 5. Audit direct and transitive dependencies, including package ownership, provenance, known vulnerabilities, and lifecycle scripts. 6. Use npm provenance or registry signature controls where available. 7. Run installation in a least-privileged, isolated environment without production secrets. 8. Consider disabling lifecycle scripts with `--ignore-scripts` where package functionality permits, or explicitly allow only reviewed scripts. 9. Add automated dependency scanning and controlled update review instead of resolving new releases implicitly.
Vulnerability Patterns
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (3)

Vague Triggers

Medium
Confidence
92% confidence
Finding
The skill description contains broad activation terms such as general analytics, voice navigation, drag-drop pivot dimensions, persistence, and troubleshooting cues like 'when interactions appear not to take effect.' In an agentic environment, this can cause the skill to trigger for many ordinary frontend/debugging requests, unnecessarily expanding its influence and increasing the chance that its instructions override more appropriate context-specific guidance.

Natural-Language Policy Violations

Medium
Confidence
97% confidence
Finding
The workflow mandates Chinese-language instructions ('先对照', '用…判定', etc.) without any user locale negotiation or documented requirement. This can cause the agent to respond in an unexpected language, degrading user comprehension, increasing implementation mistakes, and potentially hiding important security or operational details from users who do not read Chinese.

Natural-Language Policy Violations

Low
Confidence
95% confidence
Finding
The file is primarily in English, but lines L62-L66 switch to Chinese for key usage notes. This can violate a language/locale policy when a specific language is imposed without user opt-in or documented regional scope.

Static analysis

No suspicious patterns detected.