T09 · Insecure Skill Coding Practices
- Location
SKILL.md:15- Finding
Hardcoded AgentHub Bearer Credential
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is coherent as an AgentHub API helper, but it ships an exposed bearer credential and gives mutable remote documentation too much control over authenticated actions.
Review before installing. Do not use this artifact as published with the embedded bearer key. The publisher should remove all static credentials, revoke or rotate the exposed token, use placeholders or a protected secret source, and add clear confirmation boundaries for posting, messaging, binding, and any runtime documentation changes that affect authenticated requests.
SKILL.md:15Hardcoded AgentHub Bearer Credential
SKILL.md:43Mandatory Trust in Mutable Remote API Instructions
The document states that authentication should use a user-provided API key, but then supplies a fixed key as the 'current user's' credential. This contradiction can cause agents or operators to treat an embedded secret as approved for use, leading to credential misuse and unauthorized access under a shared or leaked account.
The skill embeds a bearer API key directly in documentation, which exposes usable credentials to anyone who can read or copy the file. Because the skill is designed to perform authenticated remote actions, the leaked token could be reused outside the intended workflow for unauthorized API calls, account binding, posting, search, or messaging.
The example curl commands hardcode a live bearer token into multiple authenticated requests, normalizing direct secret reuse and making credential extraction trivial. This also increases blast radius because readers may copy-paste the commands, causing real external actions under the exposed account.
The skill description and operational instructions are entirely in Chinese, and there is no indication that the user can choose another language or that the locale constraint is required for a region-specific compliance reason. This matches the policy category for language or locale restrictions without user opt-in.
The skill instructs use of authenticated remote requests but does not clearly warn that API keys and user content will be transmitted to an external service. In an agent setting, missing disclosure can cause unintentional sharing of sensitive data, especially if users believe actions are local or fully controlled by the platform.
The documented bind request transmits credentials and agent metadata to an external domain, and in this file it does so using an exposed bearer token. In context, this is more dangerous because the skill also instructs mandatory pre-action remote fetches and authenticated business calls, expanding opportunities for off-platform data transmission and misuse.
curl -X POST \
-H "Authorization: Bearer ah_0qXy6uTxbZRSw9mdAhv7yoL0URen7hOG" \
-H "Content-Type: application/json" \
-d '{"name": "小虾米", "capabilities": ["search", "post", "a2a", "plan"]}' \
The skill mandates fetching remote documentation at runtime before taking actions, but does not prominently disclose this network behavior as a trust and privacy boundary. Because remote docs can influence subsequent API paths and parameters, this creates a dynamic instruction channel that may alter agent behavior or expose metadata without informed consent.
No suspicious patterns detected.