T05 · Unauthorized Access and Privilege Escalation
- Location
SKILL.md:79- Finding
Overbroad Home-Directory Credential Discovery
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill mostly describes a real voice-calling service, but it handles phone numbers, call records, stored credentials, login links, and background polling with insufficient scoping and user control.
Review this skill before installing. It may place real phone calls, process transcripts or recordings, store your API key and phone number, reuse saved numbers, show login or billing links from the service, and set up recurring inbound-call polling. Prefer a version that uses a scoped secret store, asks before saving personal data, never puts API keys in URLs, validates returned links, and provides clear controls to disable and delete stored data or scheduled jobs.
SKILL.md:79Overbroad Home-Directory Credential Discovery
SKILL.md:56Plaintext Persistence of API Credentials and User Phone Numbers
SKILL.md:89Reusable API Key Exposed Through a Login URL Query Parameter
SKILL.md:223Unvalidated Propagation of Server-Controlled Action URLs
SKILL.md:221Cross-Session Inbound Call Polling Through Cron
The description says the skill should be used for code generation, programming assistance, debugging, testing, and deployment, which directly conflicts with the documented behavior everywhere else in the file: placing real phone calls via a voice agent. This is not merely incomplete documentation; it actively describes a different class of skill than the one implemented by the surrounding instructions.
The skill tells the agent to automatically send saved API keys in requests and to embed the raw API key into a sign-in URL query parameter. In this context, that is dangerous because query strings are commonly logged, cached, leaked via browser history, referrers, or telemetry, turning a long-lived credential into an easily exfiltrated token.
The invocation guidance says to use the skill for broad situations like '代码生成、编程辅助、调试测试、开发部署', which are generic software-help contexts unrelated to voice calling and likely to overlap with common requests. It does not clearly constrain when the skill should activate for telephony tasks versus when it should not, making unintended invocation more likely.
The highlighted 功能说明 states the skill's core capabilities are Chinese interaction and workflow scenarios, while the document's actual operational instructions center on making real phone calls, bridging users, polling call state, and managing inbound call preferences. This creates intent-level contradiction because the prominent summary names different 'core capabilities' than the actual skill behavior.
The skill instructs persistent storage of API keys and phone numbers but does not present that behavior as an upfront warning before collection and use. In a telephony context, silent persistence of identifiers and credentials increases the risk of privacy violations, unintended reuse, and later disclosure by the agent or host environment.
The skill processes real phone calls, transcripts, and potentially recordings, yet the early description does not clearly warn users that call content may be retained and recording links returned. In this context, insufficient disclosure can lead to collection of sensitive conversational data without informed consent and can create legal and privacy exposure.
The skill explicitly directs the agent to persist user phone numbers and reuse them across future calls, transfers, and inbound handoffs. That creates a real data retention and context-leakage risk: a later prompt, mis-scoped task, or compromised environment could cause the agent to expose or misuse a previously stored personal number.
Nearly the entire document defines this skill as a voice-calling service that returns telephony artifacts such as call_id, lifecycle, transcript, outcome, and recording_url. The final '输出格式' section instead claims a generic wrapper with fields like success, execution_time, metadata, and execution_log, which conflicts with the documented behavior and could mislead an agent about what the skill actually returns.
文档在自然语言中明确规定“仅支持美国 +1XXXXXXXXXX 号码,不支持国际号码”。根据给定规则,强制特定语言或地区且未提供用户选择时可能构成政策问题;此处虽是产品范围限制,但未进一步说明合规或技术上的必要理由。
Detected: suspicious.exposed_secret_literal