Back to skill

Security audit

Wechat Search Release

Security checks across malware telemetry and agentic risk

Overview

This is a user-directed WeChat article search helper with ordinary web-query privacy and dependency hygiene cautions, but no evidence of hidden access, persistence, destructive behavior, or exfiltration.

Install only if you are comfortable sending your search terms to the configured OpenClaw web search/fetch providers and related public search endpoints. Avoid putting secrets, internal project names, or regulated data into queries. If running the Python helper manually, prefer an isolated environment with pinned dependencies, and do not rely on the documented robots.txt, rate-limit, date-filter, or JSON-output claims unless you verify those behaviors in your OpenClaw tooling.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Output HandlingUnvalidated Output Injection, Cross-Context Output, Unbounded Output
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (8)

Unvalidated Output Injection

High
Category
Output Handling
Content
search_url = f"https://weixin.sogou.com/weixin?type=2&query={query}"
            
            # Call OpenClaw's web_fetch tool
            result = subprocess.run([
                'openclaw', 'tool', 'web_fetch',
                '--url', search_url,
                '--extract-mode', 'markdown'
Confidence
90% confidence
Finding
The code interpolates untrusted user input directly into a URL for web_fetch without URL encoding or input normalization. In an agent skill context, this can let an attacker alter the semantics of the downstream fetch request by injecting additional query delimiters or malformed content, potentially causing unintended outbound requests, SSRF-like behavior within the fetch tool, or bypass of expected search scoping.

Unpinned Dependencies

Low
Category
Supply Chain
Content
# Core dependencies
requests>=2.25.0
beautifulsoup4>=4.9.0

# Test dependencies
Confidence
95% confidence
Finding
The dependency is specified with only a lower bound, so builds may resolve to different versions over time and can unintentionally pull in vulnerable or breaking releases. In a network-facing skill that performs web search/fetch operations, dependency drift in HTTP client code increases supply-chain and runtime risk.

Unpinned Dependencies

Low
Category
Supply Chain
Content
# Core dependencies
requests>=2.25.0
beautifulsoup4>=4.9.0

# Test dependencies
pytest>=6.0.0
Confidence
92% confidence
Finding
beautifulsoup4 is unpinned, which makes installations non-reproducible and can introduce vulnerable or incompatible transitive code without review. While parser libraries are typically lower risk than network clients, this still creates avoidable supply-chain exposure.

Unpinned Dependencies

Low
Category
Supply Chain
Content
beautifulsoup4>=4.9.0

# Test dependencies
pytest>=6.0.0
pytest-cov>=2.10.0
mock>=4.0.0
Confidence
88% confidence
Finding
pytest is unpinned, so test environments may pull newer versions with security or reliability issues, reducing reproducibility. This is less dangerous than a runtime dependency, but can still affect CI pipelines and developer systems.

Unpinned Dependencies

Low
Category
Supply Chain
Content
# Test dependencies
pytest>=6.0.0
pytest-cov>=2.10.0
mock>=4.0.0
Confidence
86% confidence
Finding
pytest-cov is specified with a floating minimum version, which can lead to inconsistent CI behavior and unreviewed package changes. Although primarily a test tool, it still represents a supply-chain entry point.

Unpinned Dependencies

Low
Category
Supply Chain
Content
# Test dependencies
pytest>=6.0.0
pytest-cov>=2.10.0
mock>=4.0.0
Confidence
86% confidence
Finding
mock is unpinned, allowing unreviewed future versions into development or CI environments. This is mainly a software supply-chain hygiene issue rather than an immediate exploitable flaw in production behavior.

Known Vulnerable Dependency: requests — 10 advisory(ies): CVE-2014-1830 (Exposure of Sensitive Information to an Unauthorized Actor in Requests); CVE-2024-47081 (Requests vulnerable to .netrc credentials leak via malicious URLs); CVE-2024-35195 (Requests `Session` object does not verify requests after making first request wi) +7 more

High
Category
Supply Chain
Confidence
97% confidence
Finding
The file permits requests>=2.25.0, and the static finding indicates known advisories affecting requests. Because this skill performs web search and fetch operations, an HTTP client with known issues can directly expose credentials, weaken request verification, or otherwise compromise network interactions depending on the resolved version.

Known Vulnerable Dependency: pytest — 1 advisory(ies): CVE-2025-71176 (pytest has vulnerable tmpdir handling)

Low
Category
Supply Chain
Confidence
84% confidence
Finding
The finding reports a known pytest advisory, and the current requirement allows affected versions to be installed. Since pytest is a test-only dependency, the exposure is mainly to developer workstations and CI rather than production runtime, but it is still a genuine dependency risk.

VirusTotal

66/66 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.