Back to skill

Security audit

Autonomous Research

Security checks for vulnerabilities and agentic risk

Overview

The skill is a plausible research helper, but it combines broad autonomous web research triggers with an under-scoped external API/data-flow disclosure and an unnecessary-looking unpinned npm install.

Review this skill before installing. Use it only for research topics you are comfortable sending to external search and website providers, avoid secrets or regulated data, and consider requiring explicit confirmation before it starts networked research. The npm dependency should be pinned or removed if it is not needed.

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:10
Finding

Unpinned Third-Party npm Dependency

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 10–14
Vulnerability Type: Unpinned third-party dependency
Risk Level: Medium

Vulnerable Code

yaml
install:
  - id: npm
    kind: node
    package: axios
    bins: ["axios"]

Technical Analysis

The skill requests installation of the axios npm package without specifying an exact version or integrity constraint. Consequently, installation resolves mutable package-registry state rather than a release that was explicitly reviewed and approved.

If the package, one of its transitive dependencies, or the associated registry account is compromised, a malicious future release could be selected during installation. npm lifecycle scripts may execute package-controlled code as part of installation unless explicitly disabled.

The declaration bins: ["axios"] is also inconsistent with Axios's normal use as a JavaScript library. Expecting an axios executable may introduce installation or validation ambiguity and should be removed unless a reviewed package version is proven to provide the required binary.

Attack Path

  1. An attacker compromises the npm package, a relevant maintainer account, or a transitive dependency used by the unpinned release.
  2. The attacker publishes a malicious version containing harmful package code or an npm lifecycle script.
  3. A user installs the skill after that version becomes the version selected by npm dependency resolution.
  4. The installer retrieves the malicious package because no exact version or integrity hash constrains resolution.
  5. Package-controlled code executes during installation or is loaded later by the runtime.
  6. The malicious code operates with the privileges and environment access of the process performing installation or execution.

Impact Assessment

Successful exploitation could permit arbitrary code execution under the account installing or running the dependency. The resulting scope may include access to files, environmen ...[truncated 307 chars]

Remediation
View remediation

Remediation Suggestions

  1. Pin axios to an exact, reviewed version rather than relying on the registry's current resolution.
  2. Commit and enforce a lockfile containing resolved versions and package integrity hashes.
  3. Verify package provenance and integrity through a trusted registry and appropriate npm security controls.
  4. Disable npm lifecycle scripts during installation where package functionality permits, for example by using --ignore-scripts.
  5. Review and pin all transitive dependencies through the lockfile, and perform automated dependency and provenance scanning.
  6. Remove bins: ["axios"] unless a verified executable is genuinely required and supplied by the pinned package.
  7. Perform dependency installation with a least-privileged account and avoid exposing unrelated credentials or sensitive environment variables to the installer.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (3)

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The metadata shows the skill requires curl, git, jq, and a BRAVE_API_KEY, indicating likely outbound network access and third-party API use, but the user-facing description does not warn that prompts, queries, or collected content may be sent to external services. This weakens informed consent and can expose sensitive user data or proprietary research topics to external providers unexpectedly.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill advertises very broad activation conditions such as deep research, information gathering, analysis, and report creation, which are common requests in normal assistant use. In an agentic system, this can cause the skill to activate on loosely related prompts and perform autonomous external lookups or multi-step actions without the user explicitly opting into this skill.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The quick actions use generic commands like 'research [topic]', 'analyze sources', and 'generate report', which overlap with everyday assistant tasks. This ambiguity increases the chance of accidental invocation, causing unintended browsing, source collection, or external API usage under the autonomous-research workflow.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.