Back to skill

Security audit

Link Saver

Security checks for vulnerabilities and agentic risk

Overview

This is a simple local link-bookmark skill whose file access is limited to saving, listing, searching, and deleting its own links.json data.

Install only if you are comfortable with a Chinese-language bookmark helper storing submitted links and descriptions in a local links.json file. Do not save private URLs containing access tokens, passwords, or confidential account links.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
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 (6)

Natural-Language Policy Violations

Medium
Confidence
94% confidence
Finding
Natural-language content throughout the skill forces a specific language/locale experience, and there is no indication that users may choose another language or that the restriction is intentional for a region-specific use case. This can violate language/locale policy when no opt-in or justification is provided.

Vague Triggers

Medium
Confidence
91% confidence
Finding
The trigger phrases are generic actions like '保存链接' and '查看链接' without clear scoping, which can cause the skill to activate on ordinary user requests that were not meant for this tool. This is primarily an unintended-invocation and UX/safety issue rather than a direct exploit, but it can still lead to accidental data handling or unexpected persistence.

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The skill states that data is stored in links.json but does not clearly warn users that their submitted links and descriptions will be persisted locally. Users may unknowingly store sensitive URLs, tokens embedded in links, or private notes, creating confidentiality and privacy risks if the local file is later accessed by others or backed up insecurely.

Natural-Language Policy Violations

Medium
Confidence
98% confidence
Finding
The skill name, description, trigger matching, help text, and all user-visible responses are exclusively in Chinese, which imposes a specific language on users. There is no opt-in, fallback, or documented justification that this is a region-specific skill.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
This code writes to links.json in both initialization and save paths, and later overwrites the file again after deletions. Although success messages are shown after the action, there is no prior confirmation prompt or explicit warning comment/docstring disclosing that user data will be persisted and removed from local storage.

Missing User Warnings

Medium
Confidence
96% confidence
Finding
The deleteLink function permanently removes an item from the saved collection and rewrites the backing file immediately. The code returns a success message only after deletion, but provides no confirmation step or prior disclosure that the removal is destructive.

Static analysis

No suspicious patterns detected.