WeChat Article Scraper Pro

Security checks across static analysis, malware telemetry, and agentic risk

Overview

This skill enables real SkillPay billing, but the included scraper appears to be demo/simulated and its billing and credential handling are unclear.

Review the payment behavior before installing or running this skill. It appears to use real SkillPay billing while its scraper logic is marked as simulated/demo, and it includes a hardcoded billing API key. If you test it, use an isolated environment, avoid paying until functionality is verified, and check/delete the local data directory afterward.

Static analysis

No static analysis findings were reported for this release.

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

Risk analysis

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 may pay or recharge expecting a working WeChat scraper but receive demo/fake results instead.

Why it was flagged

Real payment mode is enabled by default, while the scraper implementation states it returns simulated data and needs replacement with real scraping logic.

Skill content
TEST_MODE = False ... # 这里是模拟数据,实际部署时需要替换为真实的抓取逻辑
Recommendation

Do not enable real billing until the implemented functionality matches the description; clearly label demo behavior before payment.

What this means

The user may not understand whether they are paying per call, recharging a minimum balance, or being charged a different amount than advertised.

Why it was flagged

SKILL.md advertises a 0.001 USDT per-use fee, but the code sends a zero amount for charge and requests an 8-unit payment link, making the actual billing behavior unclear.

Skill content
"amount": 0 ... requests.post(f"{BILLING_URL}/payment-link" ... "amount": 8
Recommendation

Make the charge amount, minimum recharge, and refund/verification flow explicit and ensure the code uses the same pricing stated in SKILL.md.

What this means

Billing authority is opaque to the user, and the published key could be abused or rotated unexpectedly, affecting payment reliability and accountability.

Why it was flagged

A SkillPay secret/billing key is hardcoded into the runnable code and used for API calls, despite registry metadata declaring no primary credential or required environment variables.

Skill content
SKILLPAY_API_KEY = 'sk_d11f...d3c2e' ... "X-API-Key": SKILLPAY_API_KEY
Recommendation

Move the key to a declared environment variable or managed credential, rotate the exposed key, and document exactly what billing authority it grants.

What this means

Future package changes or dependency confusion could affect what code is installed.

Why it was flagged

The setup installs dependencies directly without version pins or a lockfile.

Skill content
pip install flask requests beautifulsoup4 pandas
Recommendation

Use pinned versions or a reviewed requirements/lock file and install in an isolated environment.

What this means

Scraped or exported content remains on disk after use unless the user deletes it.

Why it was flagged

The app stores task history and article content persistently in a local SQLite database under the skill directory.

Skill content
app.config['DATABASE'] = os.path.join(SKILL_ROOT, 'data', 'wechat.db') ... content TEXT
Recommendation

Tell users where data is stored, provide a cleanup option, and avoid reusing stored content as trusted context without review.