T09 · Insecure Skill Coding Practices
- Location
SKILL.md:231- Finding
Permanent Public Exposure of Uploaded User Media
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is a coherent Flyelep video-generation API helper, but it can upload user media to permanent public links and gives unsafe shell-style examples for secrets and JSON payloads.
Review before installing. Only use this skill with media you are comfortable uploading to Flyelep and potentially exposing through long-lived public URLs. Avoid confidential, personal, biometric, customer, or unreleased business media unless the service gives you separate retention and deletion guarantees. Prefer an implementation that uses structured HTTP requests, redacts the API key, serializes JSON safely, and asks before every upload.
SKILL.md:231Permanent Public Exposure of Uploaded User Media
SKILL.md:264API Secret Exposed Through Command-Line Arguments
SKILL.md:277Shell Command Injection Through Inline User-Controlled JSON
The skill does not provide a clear user-facing warning that local files and media URLs will be transmitted to Flyelep and that uploaded outputs may be permanent public links. This undermines informed consent and can lead users to disclose sensitive media, proprietary assets, or internal URLs without understanding the persistence and third-party exposure.
The skill description and operating instructions are entirely in Chinese, and the parameter section restricts languageType support to 英语 and 中文简体. There is no stated user choice for the skill's own interaction language or policy justification for limiting supported languages, which can violate language/locale choice expectations.
The activation text says to use this skill whenever the user asks to generate a video, AI-generate a video, text-to-video, or generate from a description. These phrases are broad and likely to match many ordinary requests, but the file does not provide negative examples or clear boundaries for when this specific Flyelep API skill should or should not be invoked.
The skill includes a built-in local file upload path that sends user-supplied media to Flyelep infrastructure before video generation. This is dangerous because it expands the data-transfer scope beyond text prompts and can cause unintended disclosure of local files to a third party, especially when uploads result in permanent public links.
The skill explicitly instructs external transmission of local media files to a third-party endpoint. In context, that behavior is part of the intended functionality, but it remains security-relevant because it moves potentially sensitive local content off-device and to remote storage controlled by another service.
判断成功只看 code,业务失败时 HTTP 状态码仍是 200,code 为 500 或 9999,原因在 msg 里。
# Windows/PowerShell(用 curl.exe,PowerShell 里的 curl 是 Invoke-WebRequest 的别名)
curl.exe -X POST "https://www.flyelep.cn/prod-api/poster-design/api/v1/file/upload" -H "secretKey: 你的密钥" --max-time 300 -F "file=@C:/path/to/reference.mp4"
# macOS/Linux
The skill instructs creating temporary payload files on disk and later deleting them, which can leave sensitive request contents behind if cleanup fails or the file is written to an insecure location. Because these payloads may include user prompts, task identifiers, and operational metadata, they increase local data exposure and forensic residue risk.