Back to skill

Security audit

cer-equivalence-check

Security checks for vulnerabilities and agentic risk

Overview

The checker code is local and simple, but the package needs review because its web/write/bash authority, broad activation rules, and stale integrity metadata do not match the stated offline CLI purpose.

Review before installing. The shipped checker itself appears to be a small offline decision-support script, but install it only if you can constrain use to explicit CER equivalence-check tasks and are comfortable with the broader declared tools. Verify the package integrity metadata with the publisher, and treat outputs as regulatory triage rather than legal or official compliance advice.

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
  • 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
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (12)

Vague Triggers

High
Category
Not specified by scanner
Confidence
94% confidence
Finding

The manifest description advertises broad trigger phrases without sufficient contextual constraints, making accidental invocation more likely. In combination with the skill's elevated tool permissions, this creates a meaningful misuse risk even if the underlying checker logic is benign.

Content

No source excerpt is available for this finding.

Vague Triggers

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The read_when conditions are extremely broad, including generic phrases like '医疗器械' and '医械合规', which can trigger the skill in ordinary conversation unrelated to this specific checker. Overbroad auto-activation can cause unintended execution with powerful tools, increasing the chance of inappropriate file access, command execution, or user confusion.

Content

No source excerpt is available for this finding.

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

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

md
### Process
1. Build a JSON input package with the device registration certificate, comparison data source, and access agreement.
2. Run with `--input` pointing at the data file, or `--demo` for the preset compliant case.
3. The tool parses element completeness, focusing on whether data-access credentials required for clinical evaluation exist.
4. It generates deterministic JSON IR with an immutable analysis log.
5. Use the return code (0/1/2) to judge pass, missing permission, or execution error.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill is described as a zero-dependency local CLI checker, yet the manifest grants WebFetch, WebSearch, Write, and Bash. This over-privileging expands the attack surface beyond the documented purpose and can enable unintended network access or filesystem modification if the skill is invoked or repurposed.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The risk rationale states the skill may call APIs, read/write files, and perform local execution, which contradicts the description of a deterministic zero-dependency local checker. Such inconsistencies are dangerous because reviewers and policy gates may underestimate the actual operational permissions and approve a broader capability set than intended.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

This code presents its description, CLI help, warnings, notes, and output disclaimer entirely in Chinese, with no opt-in or configurable locale. That can violate language/locale policy where skills must not force a specific language without user choice or documented regional justification.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The natural-language description is entirely in Chinese and does not offer a language or locale choice. Under the stated policy, forcing a specific language without user opt-in is a natural-language policy violation unless the locale constraint is explicitly documented and justified.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
88% confidence
Finding

The file title and surrounding instructional content are presented in Chinese as the default operating language for the skill documentation. This can violate a language/locale policy when no user or agent opt-in is provided and no region-specific justification is stated.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

This file begins with a policy-style scope notice written in Chinese, while the formal license body is in English, and there is no indication that the Chinese-only explanatory section is optional, translated elsewhere, or required for a specific locale. Under the natural-language policy check, this can be considered a language/locale constraint presented without user opt-in or justification.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

This SVG presents all visible product labeling and descriptors in Chinese, with no indication that the skill is region-specific or that users can select another language. The policy allows locale constraints when they are explicitly justified, but this file provides no such justification.

Content

No source excerpt is available for this finding.

Dynamic attribute access via getattr()

Low
Category
Dangerous Code Execution
Confidence
50% confidence
Finding

Dynamic getattr() with a non-literal attribute name can access arbitrary object attributes, potentially bypassing access controls.

Content

Scanner excerpt · cer-equivalence-check.py (reported line 94)May include surrounding context.

python
"rc": 2, "error_code": e.code}, ensure_ascii=False))
        sys.exit(0 if ok else 2)

    args = {k: getattr(ns, k) for k in names}
    if not any(v not in (None, "") for v in args.values()):
        p.print_help()
        sys.exit(0)

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
80% confidence
Finding

The manifest includes the author name entirely in Chinese script ("注册老炮@MedXpert") with no accompanying locale choice, translation, or justification that this skill is region-specific. For organizational language/locale policy review, this can be read as imposing a specific language context without offering an alternative.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.