Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

本地文件上传云端

v1.0.0

Uploads a local file to Qiniu Cloud Storage and returns a shareable URL.

0· 79·0 current·0 all-time
byan@ahsbnb
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Suspicious
View report →
OpenClawOpenClaw
Suspicious
high confidence
!
Purpose & Capability
The skill's stated purpose (upload a local file to Qiniu) matches the code's behavior, but the registry metadata claims no required config or credentials while the script reads Qiniu credentials and settings from ~/.openclaw/config.json. The manifest should declare that it needs Qiniu credentials/config; the current mismatch is incoherent.
!
Instruction Scope
SKILL.md tells the user to install the qiniu Python package and run the script with --file and warns about public uploads, but it does NOT document the required configuration file location or required config keys (qiniu_access_key, qiniu_secret_key, qiniu_bucket_name, qiniu_domain). The runtime instructions therefore omit essential configuration steps. Also, the script will attempt to read arbitrary local file paths (which is necessary for the stated purpose) — this is expected but should be explicitly documented as a privacy risk (the README warns about sensitivity, which is good).
Install Mechanism
No install spec (instruction-only) — low install risk. SKILL.md correctly instructs to pip install the qiniu package; that dependency is reasonable for the stated functionality. No network downloads of arbitrary code are included in the skill bundle itself.
!
Credentials
The skill requires sensitive Qiniu credentials (access key/secret + bucket/domain) but does not declare them in metadata; instead it silently reads ~/.openclaw/config.json. Requesting access to a user-owned config file with credentials is proportionate to the upload task only if clearly declared and optional alternatives (environment variables) are provided. The lack of disclosure and the unexpected config path are disproportionate and surprising.
Persistence & Privilege
The skill does not request persistent or elevated privileges, does not set always:true, and has no install hooks. It only reads a config file from the user's home and performs network uploads as part of its function — expected for this purpose.
What to consider before installing
This skill will upload any local file you point it at to a Qiniu bucket. Before installing or running it: (1) Do not use it for private or sensitive files — uploaded objects may be publicly accessible. (2) Inspect your ~/.openclaw/config.json to see what Qiniu credentials would be used; the skill reads qiniu_access_key, qiniu_secret_key, qiniu_bucket_name, and qiniu_domain from that file but the skill metadata did not declare this requirement. (3) Consider storing credentials in a place you control or modifying the script to use environment variables instead. (4) Note: the shipped script has a bug (it references urllib.parse.quote but does not import urllib) — it will raise an error unless patched. (5) Test with non-sensitive sample files first, and prefer running in an isolated environment. If you need this functionality, ask the author to update the SKILL.md/metadata to declare the config path and required keys and to fix the missing import and documentation.

Like a lobster shell, security has layers — review code before you run it.

latestvk97etzrbd7rkegb2g7bx6vz36d83nkew

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Comments