Back to skill

Security audit

Go漏洞扫描基础版

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward Go vulnerability-scanning guide that uses the official govulncheck tool, with some normal setup and network-use cautions for users.

Before installing, confirm you want this skill to run govulncheck on the specific Go module you choose. For private or sensitive repositories, review your network and Go proxy policies, and consider pinning govulncheck to a reviewed version instead of using @latest.

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

Unpinned Installation of an Executable Dependency

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, line 195; the same installation pattern also appears at lines 144 and 162
Vulnerability Type: Supply-chain risk caused by a mutable dependency version
Risk Level: Medium

Vulnerable command:

shell
go install golang.org/x/vuln/cmd/govulncheck@latest

Technical Analysis

The Skill instructs users or Agents to install govulncheck using the mutable @latest version selector. Although the referenced module is the official Go vulnerability scanner, this installation method does not pin the downloaded source to a specific reviewed release.

Consequently, the code installed at execution time can differ from the code available when the Skill was audited. If the upstream module, publishing process, source repository, or module-distribution infrastructure is compromised, a malicious future release could be selected automatically. The resulting executable would subsequently run as part of the documented vulnerability-scanning workflow.

This is a supply-chain weakness rather than evidence that the current upstream package is malicious.

Attack Path

  1. An attacker compromises the upstream repository, release process, maintainer account, or relevant module-distribution channel.
  2. The attacker publishes a malicious version that becomes the version resolved by @latest.
  3. A user or Agent follows the Skill instructions and runs the unpinned installation command.
  4. The Go toolchain downloads and builds the attacker-controlled version.
  5. The documented workflow later invokes the installed govulncheck binary.
  6. The malicious binary executes with the permissions and environmental access of the Agent or user running the scan.

Impact Assessment

Successful exploitation could provide arbitrary code execution under the account that installs and invokes the scanner. The accessible scope could include source repositories, files readable or writable by ...[truncated 403 chars]

Remediation
View remediation

Remediation Suggestions

  1. Replace @latest with an explicit, reviewed release:
    shell
    go install golang.org/x/vuln/cmd/govulncheck@vX.Y.Z
    
  2. Record the approved version in the Skill documentation and update it only through a controlled review process.
  3. Verify the selected version against the official Go vulnerability-scanner release information before adoption.
  4. Retain Go checksum-database verification and avoid disabling module-integrity protections such as GOSUMDB without a justified private-module configuration.
  5. In managed environments, distribute the scanner through a trusted internal artifact repository and verify its provenance or digest before execution.
  6. Apply the pinned command consistently at all documented occurrences, including lines 144, 162, and 195.
  7. Run the scanner with least privilege and avoid exposing unrelated credentials or sensitive environment variables to the scanning process.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (3)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The skill's invocation guidance is broad and lacks explicit activation constraints, which can cause the agent to apply the skill in unintended contexts or on the wrong workspace. Because the skill includes exec capability and is designed to run govulncheck against a module path, ambiguous triggering increases the chance of unauthorized or accidental scanning of local codebases.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill instructs the agent to run govulncheck without warning that the tool may contact external services and disclose dependency or module metadata during vulnerability database access. In sensitive or private repositories, this can create an unexpected data exposure or policy violation, especially in automated agent workflows where users may assume analysis is fully local.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The display name, summaries, and nearly all instructional content are presented in Chinese, while the file does not state that the skill is intended only for Chinese-speaking users or offer alternative language output. This can violate a language/locale policy when a skill imposes a specific language without user opt-in.

Content

No source excerpt is available for this finding.