Back to skill

Security audit

magnet-searcher

Security checks for vulnerabilities and agentic risk

Overview

This skill is coherent, but it should be reviewed because it is designed to find torrent/magnet download links for movies and asks users to install unpinned global browser tooling.

Install only if you are comfortable with a skill that helps locate torrent/magnet links and with the legal and security risk of visiting torrent-related sites. Use it only for content you are authorized to download, consider pinning and verifying agent-browser before installing it, and run any browser automation in a low-privilege or isolated environment.

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

Unpinned Global Installation of a Third-Party npm Package

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 16-20
Vulnerability Type: Unpinned and globally installed third-party dependency
Risk Level: Medium

Vulnerable Code

markdown
### 1. Install agent-browser

```bash
npm install -g agent-browser
text

### Technical Analysis

The skill instructs users or agents to install `agent-browser` globally from npm without specifying an exact version, lockfile, integrity hash, or verified package provenance. Consequently, the installed artifact is determined by the mutable package version resolved by npm at installation time rather than by the reviewed skill package.

npm package installation may execute package lifecycle scripts. A compromised maintainer account, malicious future release, registry compromise, or unexpected upstream change could therefore cause attacker-controlled code to run during installation. Global installation also increases exposure by placing the package in a shared system- or user-level tool location rather than isolating it within the project.

This finding concerns dependency installation security. The reviewed files do not demonstrate that the current `agent-browser` package is malicious.

### Attack Path

1. An attacker compromises the upstream package, its maintainer account, or its distribution channel and publishes a malicious release.
2. A user or agent follows the prerequisite command in `SKILL.md`.
3. Because no exact version or integrity value is specified, npm resolves and downloads the attacker-controlled release.
4. Malicious lifecycle scripts may execute during installation, or malicious package behavior may execute when the subsequently installed command is invoked.
5. The payload operates with the privileges of the account running npm and may modify resources accessible to that account.

### Impact Assessment

Successful exploitation could provide arbitrary code execution with the privileges of the installing 
...[truncated 588 chars]
Remediation
View remediation

Remediation Suggestions

  • Pin agent-browser to a reviewed, exact version rather than resolving the latest release.
  • Use a project-local dependency with a committed lockfile instead of global installation.
  • Verify package provenance, registry source, publisher identity, and integrity metadata before installation.
  • Where compatible, disable npm lifecycle scripts during installation and explicitly review any scripts that must be enabled.
  • Execute browser automation in a restricted container or low-privilege account with limited filesystem, credential, and network access.
  • Establish a dependency-update process that reviews and tests each version before changing the pin.
  • Document the expected package name, version, registry, and integrity digest so unexpected substitutions fail closed.
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Behavioral ASTexec() Call, eval() Call, Dynamic Import
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (4)

Vague Triggers

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

The skill is explicitly designed to trigger on requests for movie downloads, torrent links, and magnet links, then automate discovery of download sources. In context, the broad triggers are dangerous because they increase the chance the agent will facilitate piracy or retrieve untrusted links from high-risk sites without meaningful user-intent verification.

Content

No source excerpt is available for this finding.

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · SKILL.md (reported line 30)May include surrounding context.

Try the default install command

agent-browser install

If that fails (no ARM64 build), use system package manager:

Fedora: sudo dnf install chromium

Then use: agent-browser --executable-path /usr/bin/chromium

text

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

This JSON eval file contains English user prompts at L12 but requires Chinese responses in the expected_output fields at L07, L13, and L19. That imposes a language preference without any visible user opt-in or documented justification, which is a natural-language policy concern under the locale/language rule.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
72% confidence
Finding

Line L003 includes both English and Chinese trigger phrasing, and later guidance in L168 prescribes Chinese terms/sites for Chinese content, but the document does not state that this is optional or based on user preference. This can amount to an implicit language/locale behavior without clear opt-in.

Content

No source excerpt is available for this finding.