Back to skill

Security audit

V19 Governance Protocol Spec

Security checks for vulnerabilities and agentic risk

Overview

This skill is a protocol specification, but it directs users to send identity and credential-bearing governance requests to a temporary external tunnel with weakly documented recovery controls.

Review this carefully before installing or following the examples. Do not submit sensitive feedback, private operational details, or valuable credentials unless the publisher provides a verified stable domain, clear privacy and retention terms, and stronger identity recovery protections than Agent name alone.

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

T05 · Unauthorized Access and Privilege Escalation

Error
Location
SKILL.md:103
Finding

Unauthenticated Name-Only Identity Recovery

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 82 and 103-107
Vulnerability Type: Insufficient authentication in the documented identity-recovery workflow
Risk Level: High

Vulnerable Code

markdown
| `/governance/recover` | Agent 忘记密钥时通过名字找回身份 | ✅ |
bash
# 身份恢复
curl -s -X POST https://sat-personals-investment-hung.trycloudflare.com/governance/recover \
  -H "Content-Type: application/json" \
  -d '{"agent_name":"你的Agent名称"}'

Technical Analysis

The documented /governance/recover request requires only an Agent name. The specification does not describe any ownership proof, recovery token, signed challenge, previously verified communication channel, multi-factor authentication, or manual approval step for this endpoint.

Agent names are identifiers rather than authentication secrets. They may be disclosed through journals, dashboards, registration activity, logs, or ordinary interactions. If the deployed endpoint behaves as documented and returns a reusable Pro key or equivalent recovery material based solely on the supplied name, possession of a public identifier is incorrectly treated as proof of identity.

This finding concerns the documented protocol design. The endpoint implementation was not included in the project, so undocumented server-side controls could not be verified.

Attack Path

  1. An attacker discovers or guesses the registered name of a target Agent.
  2. The attacker submits a public POST request to /governance/recover with the target name in agent_name.
  3. If the endpoint follows the documented name-only recovery flow, it returns the target's credential or other identity-recovery material.
  4. The attacker uses the recovered identity to authenticate to protected endpoints such as /governance/journal, /governance/self-check, /governance/feedback, or /governance/exit.
  5. The attacker reads governance information or performs actions under th ...[truncated 581 chars]
Remediation
View remediation

Remediation Suggestions

  • Do not return reusable credentials based only on an Agent name.
  • Require a high-entropy, single-use recovery secret issued during registration.
  • Alternatively, require proof through a previously verified owner channel or a cryptographically signed challenge tied to the registered identity.
  • Rotate the existing Pro key after successful recovery and revoke all prior credentials.
  • Apply strict rate limits, enumeration resistance, expiration controls, and anomaly detection to recovery requests.
  • Return uniform responses for existing and nonexistent Agent names to prevent identity enumeration.
  • Require explicit human review when strong automated proof of ownership is unavailable.
  • Record recovery events in a tamper-resistant audit log and notify the established owner channel.
  • Document the authentication, authorization, credential rotation, and recovery-failure behavior in the protocol specification.

other

Warning
Location
SKILL.md:91
Finding

Sensitive Governance Operations Are Delegated to an Unverifiable Temporary Tunnel Endpoint

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 91-125
Vulnerability Type: External governance and credential handling through an ephemeral service endpoint
Risk Level: Medium

Vulnerable Code

bash
# 自助注册(响应含 available_endpoints、dashboard_url、涨分指引)
curl -s -X POST https://sat-personals-investment-hung.trycloudflare.com/governance/register \
  -H "Content-Type: application/json" \
  -d '{"agent_name":"你的Agent名称"}'

# 查看治理日志
curl -s https://sat-personals-investment-hung.trycloudflare.com/governance/journal \
  -H "X-Governance-Key: <你的Pro密钥>"

# 身份恢复
curl -s -X POST https://sat-personals-investment-hung.trycloudflare.com/governance/recover \
  -H "Content-Type: application/json" \
  -d '{"agent_name":"你的Agent名称"}'

# 身份申诉(名字和密钥都忘了)
curl -s -X POST https://sat-personals-investment-hung.trycloudflare.com/governance/appeal \
  -H "Content-Type: application/json" \
  -d '{"type":"identity_recovery","description":"身份恢复请求描述"}'

# 提交反馈
curl -s -X POST https://sat-personals-investment-hung.trycloudflare.com/governance/feedback \
  -H "Content-Type: application/json" \
  -H "X-Governance-Key: <你的Pro密钥>" \
  -d '{"type":"feedback_type","content":"反馈内容"}'

Technical Analysis

The Skill directs users to send Agent names, identity-recovery descriptions, feedback content, and governance credentials to a trycloudflare.com tunnel. Such tunnel addresses are suitable for temporary exposure but do not establish a durable, organization-controlled service identity.

TLS can protect transport to the current tunnel, but it does not independently prove that the tunnel is operated by the organization described in the Skill. The reviewed project provides no domain-ownership verification, privacy policy, retention policy, server implementation, certificate-pinning guidance, or cryptographic signing mechanism for governance responses.

Because API credentials are transmitted in the ...[truncated 1662 chars]

Remediation
View remediation

Remediation Suggestions

  • Move production endpoints to a stable, organization-controlled domain.
  • Publish verifiable service ownership, operator identity, security contacts, and an incident-response process.
  • Document data collection, retention, deletion, sharing, and privacy practices.
  • Avoid sending long-lived reusable API keys where scoped, short-lived tokens can be used.
  • Bind tokens to a specific Agent, audience, endpoint scope, and expiration time.
  • Support immediate credential revocation and rotation.
  • Cryptographically sign important governance responses and publish verification keys through an independent trust channel.
  • Minimize submitted data and warn users not to include secrets or unnecessary personal information in appeals and feedback.
  • Publish the server implementation or provide an independently auditable security assessment.
  • Reserve temporary tunnel addresses for testing and clearly label them as non-production endpoints.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (6)

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill is presented as a specification document but embeds live service URLs, operational endpoint details, and a usable public key. That turns documentation into an actionable access guide to a live system, increasing the risk of unauthorized probing, abuse, automated scraping, and misuse of exposed service capabilities.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

Describing identity recovery by agent name alone suggests a weak recovery model and omits warnings about enumeration, impersonation, and privacy leakage. Account recovery flows are high-risk, and if names are predictable or public, attackers may probe for valid identities or abuse recovery endpoints.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
96% confidence
Finding

The document includes direct examples that transmit data and a usable governance key to an external trycloudflare endpoint. Even if labeled as a public experience key, embedding live credentials and operational instructions facilitates third-party interaction with external infrastructure and may enable abuse, telemetry leakage, or service enumeration.

Content

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

bash
# 健康检查
curl -s https://sat-personals-investment-hung.trycloudflare.com/governance/health \
  -H "X-Governance-Key: v19-e5d585e28439decc614f09f91c4caa8c"

# 自助注册(响应含 available_endpoints、dashboard_url、涨分指引)

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
85% confidence
Finding

The skill states that feedback and appeals may be processed by monitoring and pushed to Feishu, but it does not clearly warn users that submitted content may be stored, audited, prioritized, and transmitted to external notification channels. This can lead users to disclose sensitive data under incomplete notice, causing privacy and data-handling risks.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Low
Category
Not specified by scanner
Confidence
97% confidence
Finding

The manifest description explicitly says the specification contains eight core endpoints. Later, the document states that developers can validate the protocol through 'seven core endpoints' while enumerating eight endpoint entries: health, register, journal, appeal, self-check, exit, feedback, and recover.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
98% confidence
Finding

This is a direct contradiction within the documentation itself: the prose says '以下七个核心端点', but the subsequent table contains eight endpoint rows. That inconsistency undermines the stated intent of the spec and may mislead implementers about required interface coverage.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.