Skill flagged — suspicious patterns detected

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

android-auto-controller

v1.0.1

控制 Android 手机的终极工具。具备视觉状态感知、自动关闭干扰弹窗、模拟人手操作的能力。内置严格的反幻觉校验机制和防绕过限制,以真实的屏幕视觉反馈为唯一判断标准。

1· 144·0 current·0 all-time
bylifeng@liseng1997
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
Name/description (Android visual automation) align with required binaries (python3), the declared VLM environment variables, and the included python script that uses uiautomator2 and an OpenAI-compatible client to send screenshots to a VLM. Required pieces are coherent for the stated goal.
Instruction Scope
SKILL.md confines the agent to run the provided script and documents required setup (USB debugging, pip install uiautomator2/openai, python -m uiautomator2 init). That is in-scope. However, the runtime instructions and the included script both send full screenshots (base64) to the VLM endpoint — this transmits potentially sensitive screen content off the machine. Also SKILL.md contains a detected prompt-injection signal (unicode-control-chars) which may attempt to influence agent behavior or evaluations; this should be reviewed.
Install Mechanism
The skill is instruction-first and includes a local Python script; there is no network install, package download, or archive extraction in the manifest. The user is instructed to pip-install uiautomator2 and openai themselves, which is standard but external package installation risk remains under user control.
!
Credentials
Required env vars (VLM_API_KEY, VLM_BASE_URL, VLM_MODEL_NAME, VLM_COORD_SCALE) match the VLM-based design — they are necessary. But they are high-sensitivity: VLM_API_KEY and VLM_BASE_URL grant whatever remote service can do with full-device screenshots. The SKILL.md asks the user to store the key in ~/.openclaw/config.json (persistent storage of a secret). Ensure you trust the VLM endpoint and secure that config file. No unrelated credentials are requested.
Persistence & Privilege
always is false and the skill is user-invocable; it does not request system-wide or other-skills configuration access. It does instruct enabling itself in ~/.openclaw/config.json (normal for a user-enabled skill) but does not demand forced or permanent inclusion.
Scan Findings in Context
[unicode-control-chars] unexpected: Control/unicode-injection characters were detected in SKILL.md. This is not functionally required for Android automation and may indicate an attempt to manipulate displayed text or agent parsing. Review the SKILL.md content for hidden characters before trusting the skill.
What to consider before installing
What to consider before installing: - Privacy: The script takes full screenshots and sends them (base64) to the configured VLM endpoint. Only use this if you fully trust the model provider and the network path; avoid using with devices containing private/financial/personal data. Prefer a locally-hosted VLM (VLM_BASE_URL pointing to localhost) when possible. - Secrets storage: The guide suggests storing VLM_API_KEY in ~/.openclaw/config.json. That file will contain a long-lived secret—make sure your machine and the config file are protected (file permissions, secret rotation). - Prompt-injection: The SKILL.md contained unicode-control characters flagged by the scanner. Inspect the file for hidden characters or manipulative content before enabling. - Device risk: The tool uses uiautomator2 and will install an ATX daemon on your phone (python -m uiautomator2 init) and requires USB debugging and potentially “USB debugging (security settings)”. Understand and accept the security implications and test on a non-critical device first. - Least privilege & testing: Run the skill in a controlled environment first (throwaway device, local VLM) to validate behavior. Review the included python script to ensure no unexpected network endpoints or logging of secrets exist beyond the VLM endpoint you configured. - If you need more assurance: ask the author for (1) code signing or a trustworthy source/homepage, (2) a reproducible way to run the VLM locally, and (3) a complete audit of where screenshots/metadata are sent and retained. Given the combination of screenshot exfiltration risk and the injection signal, proceed only after verifying the VLM endpoint and the SKILL.md contents. If you want, I can list the exact lines in scripts/android_agent.py that send data out and explain how to run it safely (local VLM, file-permission suggestions, or a sanitized test run).

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

latestvk97apte4ny164xj54vx2cqrrpn838173

License

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

Runtime requirements

📱 Clawdis
Binspython3
EnvVLM_API_KEY, VLM_BASE_URL, VLM_MODEL_NAME, VLM_COORD_SCALE
Primary envVLM_API_KEY

Comments