Skill flagged — suspicious patterns detected
ClawHub Security flagged this skill as suspicious. Review the scan results before using.
Tonghuashun Ifind
v0.3.2Use when the user needs Tonghuashun iFinD market, report, factor, screening, calendar, or other financial data that iFinD can provide, and equivalent queries...
⭐ 0· 170·0 current·0 all-time
byWu Bo Yu@etherstrings
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
OpenClaw
Suspicious
high confidencePurpose & Capability
Name/description match the implemented endpoints (quantapi.51ifind.com) and routing for market/financial queries. Browser-based token capture and token refresh flows are plausible requirements for obtaining iFinD tokens. However, the recorded runtime footprint (Playwright-based browser capture, requests usage) is not reflected in the declared requirements (metadata only lists python3), which is an inconsistency.
Instruction Scope
SKILL.md instructs the agent to use browser automation only to fetch tokens and not to echo tokens, which aligns with purpose. But the code's browser capture collects full response payloads, request headers, localStorage, sessionStorage, and cookies — data that may include unrelated site tokens or secrets. The documentation does not clearly limit capture to iFind-origin data, creating risk of over-collection.
Install Mechanism
There is no install spec (instruction-only), which avoids arbitrary downloads, but the code imports and relies on third-party packages (playwright, requests). Those dependencies are not declared in the skill metadata or install instructions, so a runtime environment may need to install them (potentially automatically). Missing dependency declaration is a notable operational/integrity mismatch.
Credentials
The skill declares no required env vars, yet the code reads IFIND_BROWSER_EXECUTABLE and writes token state to ~/.openclaw/tonghuashun-ifind/token_state.json. It also accepts user credentials (username/password) and can store access/refresh tokens. While these needs are explainable for token acquisition, the skill will access and capture browser storage and cookies (potentially unrelated secrets) which is broader than what the metadata signals.
Persistence & Privilege
always:false and no modifications to other skills or system-wide settings. The skill writes its own token_state.json under ~/.openclaw, which is typical for storing tokens and is within expected scope.
What to consider before installing
This skill appears to implement iFinD API access and uses browser automation to obtain tokens — that is reasonable for its purpose — but there are two practical issues to consider before installing or running it:
1) Missing declared dependencies: the runtime uses Playwright and requests but the skill metadata only lists python3. Ensure you or your environment installs and reviews those packages before running the skill (pip install playwright requests, and install Playwright browsers), and verify no unexpected network installers run.
2) Broad browser capture: the Playwright adapter captures response payloads, request headers, localStorage/sessionStorage and cookies. Although the code tries to extract iFinD access_token/refresh_token, this capture can also collect unrelated secrets from the browser (other site tokens, stored credentials). To reduce risk, prefer supplying tokens via auth-set-tokens rather than providing username/password; if you must use auth-login, run it in an isolated environment (dedicated VM/container/profile) and review the code in scripts/runtime/tonghuashun_ifind_skill/browser_login.py so you understand exactly what will be captured.
Additional suggestions:
- Review DEFAULT_BASE_URL and ensure it matches the official iFinD endpoint you expect.
- Inspect and lock permissions on the token state file (~/.openclaw/tonghuashun-ifind/token_state.json) if sensitive tokens will be stored there.
- If you do not want the agent to run this skill autonomously, disable or gate the skill in your agent configuration; autonomous invocation plus broad capture increases blast radius.
If you want, I can list the exact lines that capture browser storage/headers/cookies, enumerate missing Python deps, or draft a safer workflow that uses manual token injection instead of browser login.Like a lobster shell, security has layers — review code before you run it.
latestvk97a0f433dsqrq59a4dzxf8t1584yfxc
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
Runtime requirements
Binspython3
