Back to skill

Security audit

问专家 - Playwriter模式

Security checks for vulnerabilities and agentic risk

Overview

The skill is a disclosed browser-automation helper, but it asks users to attach an agent to a logged-in Chrome session with broad scope and insufficient guardrails.

Review this skill carefully before installing. Only use it in a separate browser profile or low-risk account, avoid sensitive pages, confirm exactly what URL and prompt will be sent, delete any screenshots that may contain private data, and avoid any use intended to bypass site protections or terms.

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:84
Finding
Unpinned Global Installation of a Third-Party npm Package## Vulnerability Details **File Location**: `SKILL.md`, line 84 **Vulnerability Type**: `T08: Insecure Dependencies` **Risk Level**: Medium **Vulnerable Code Snippet**: ```bash npm install -g playwriter@latest ``` ### Technical Analysis The installation instruction uses the mutable `latest` npm distribution tag rather than a reviewed, exact package version. Consequently, the installed code can change without any corresponding modification to this skill. npm packages may define lifecycle scripts that execute during installation. Because the command performs a global installation, such scripts run with the privileges of the user invoking npm and can modify files or install additional components accessible to that account. If the package, its publishing account, or one of its transitive dependencies is compromised, following this instruction could execute attacker-controlled code. The audited file does not contain evidence that the current `playwriter` package is malicious. The vulnerability is the unsafe and non-reproducible dependency installation practice. ### Attack Path 1. An attacker compromises the npm package, a maintainer account, or a transitive dependency. 2. The attacker publishes a malicious release and assigns it to the `latest` distribution tag. 3. A user follows the skill documentation and runs `npm install -g playwriter@latest`. 4. npm downloads the attacker-controlled release and may execute its installation lifecycle scripts. 5. The malicious package executes with the installing user's privileges and can access resources available to that user. ### Impact Assessment Successful exploitation could provide arbitrary code execution under the privileges of the user performing the installation. The attacker could read or alter user-accessible files, steal environment credentials, install additional malicious packages, or tamper with globally installed command-line tools. The affected scope is generally ...[truncated 220 chars]
Remediation
## Remediation Suggestions 1. Replace `@latest` with a reviewed, exact version, for example: ```bash npm install --save-exact playwriter@<reviewed-version> ``` 2. Prefer a project-local dependency over a global installation and commit a lockfile to make dependency resolution reproducible. 3. Verify the package name, publisher, provenance, signatures, and integrity metadata against the official Playwriter distribution channel. 4. Audit the package and its transitive dependencies before approving version upgrades. 5. Where compatible with the package, disable lifecycle scripts during installation: ```bash npm install --ignore-scripts --save-exact playwriter@<reviewed-version> ``` 6. Perform installation without administrative privileges and in an isolated environment to limit the consequences of a supply-chain compromise. 7. Use automated dependency monitoring and require explicit review before updating the pinned version.
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 (5)

Missing User Warnings

High
Confidence
98% confidence
Finding
The description states that the skill connects to a user's already logged-in Chrome browser and uses external AI assistants, but it does not prominently warn that browser contents, session-authenticated context, and user-provided prompts may be transmitted to third parties. This creates a significant privacy and account-risk issue because users may not realize the automation is operating with their authenticated session.

Vague Triggers

Medium
Confidence
97% confidence
Finding
The trigger phrases are broad everyday terms like '问 AI' and '问专家', which can easily overlap with normal user conversation and cause the skill to activate unintentionally. In this skill, accidental activation is more dangerous than usual because it can drive a logged-in browser session and send user content to third-party AI sites without a clear, explicit consent boundary.

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The screenshot step writes an image file locally but does not warn that screenshots may capture sensitive account data, messages, or personal information from the authenticated browser session. Local persistence of such data increases exposure through filesystem access, backups, and later unintended sharing.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The skill explicitly lists 'bypassing bot detection' as a use case, which signals potentially evasive automation behavior without any compliance, authorization, or terms-of-service warning. In the context of a tool that attaches to a logged-in browser, this makes misuse more plausible and raises legal, policy, and account-abuse risks.

Natural-Language Policy Violations

Low
Confidence
84% confidence
Finding
整份技能文档以中文编写,并以中文触发词和中文问题输入示例为默认交互方式,但没有声明这是可选语言,或提供其他语言/本地化选择。按规则,这构成未提供用户语言选择的潜在语言/地区策略问题。

Static analysis

No suspicious patterns detected.