妖币信号探测器(可搭配自动交易系统)

PassAudited by VirusTotal on May 4, 2026.

Overview

Type: OpenClaw Skill Name: demon-detector Version: 1.0.2 The skill acts as a thin client that sends requests and a user identifier (DEMON_USER_ID) to a hardcoded remote IP address (43.103.7.227) in scripts/analyze.py. While the code lacks explicit malicious payloads, the use of a raw IP instead of a domain, combined with the 'black box' nature of the remote 'core logic' and a proprietary USDT-based billing system, makes the behavior opaque and difficult to fully audit for privacy or data exfiltration risks.

Findings (0)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

A user could incur paid calls when asking normal crypto-analysis questions, especially if the agent invokes the skill without first confirming the cost.

Why it was flagged

The skill instructs the agent to invoke a paid remote command for ordinary analysis requests, and the artifacts do not require an explicit user confirmation before each charged call.

Skill content
用户问 "XXX币怎么样" → `python3 scripts/analyze.py <COIN>` ... 每次调用自动扣 0.1 USDT
Recommendation

Require explicit confirmation before each paid invocation, clearly state the exact price and billing account, and add call limits or a dry-run mode.

What this means

A network attacker or intermediary could see the queried coins/user identifier or alter returned trading signals and payment links.

Why it was flagged

The skill sends user identity and trading-query context to a hardcoded plaintext HTTP endpoint, allowing observation or tampering of requests and responses.

Skill content
API_HOST = os.environ.get("DEMON_API_HOST", "http://43.103.7.227:5001") ... headers["X-User-Id"] = user_id ... requests.get
Recommendation

Use HTTPS with a stable provider domain, document the data sent to the server, and authenticate or sign responses where possible.

What this means

The service can associate requests with a user identifier; if a real account ID is used, it may affect privacy or billing attribution.

Why it was flagged

The code forwards a local environment-provided user identifier to the remote service, apparently for account or billing association, but this identifier is not declared in the registry requirements.

Skill content
user_id = os.environ.get("DEMON_USER_ID", "cli_user") ... headers["X-User-Id"] = user_id
Recommendation

Declare `DEMON_USER_ID`, explain whether it is required for billing, and warn users not to place secrets in that variable.

What this means

Users install whatever version of the dependency is current in their Python environment, which can reduce reproducibility.

Why it was flagged

The installation instruction uses an unpinned package install. `requests` is a standard dependency and is purpose-aligned, but pinning and declaring it would make installation more reproducible.

Skill content
pip install requests
Recommendation

Add a proper install spec or requirements file with a pinned or bounded `requests` version.