Fin Audit Automator

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

Overview

The skill mostly looks like a local financial-audit helper, but it makes strong security and compliance promises that the included code does not actually enforce.

Do not rely on the advertised sandbox, network isolation, tamper-proof logs, or automatic data masking without independent verification. Use only test or sanitized data until the publisher provides consistent versioning, pinned dependencies, explicit credential declarations, real sandbox/network controls, and clear log-retention procedures.

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 trust the skill with sensitive financial records based on security promises that are not actually enforced by the provided code.

Why it was flagged

These are strong security assurances for financial data. The included implementation does not substantiate them: index.py does not call secure_execute, modules/sandbox.py only clears proxy environment variables, audit logs are normal appendable files, and masking is not applied to the main outputs.

Skill content
🔒 本地处理: 所有数据在本地沙箱完成,不上传云端; 🚫 网络隔离: 仅允许访问白名单内网,禁止公网; 📝 审计留痕: 所有操作记录不可篡改的审计日志; 🛡️ 数据脱敏
Recommendation

Treat this as a basic local script unless the publisher provides real sandboxing, enforced network controls, tamper-evident logging, and documented masking behavior.

What this means

Users may not be able to reproduce exactly what dependency versions will run, and the version mismatch makes review and support harder.

Why it was flagged

The package version differs from the registry/SKILL versions, and dependencies are broad lower-bound ranges without a lockfile or install spec. This is a provenance and reproducibility note, not evidence of malicious code.

Skill content
"version": "1.0.0", ... "dependencies": { "pandas": ">=1.3.0", "numpy": ">=1.21.0", "sqlalchemy": ">=1.4.0", "cryptography": ">=3.4.0", "jieba": ">=0.42.1" }
Recommendation

Ask for a consistent release version, dependency lockfile, and clear installation instructions before using it in a regulated environment.

What this means

If these environment variables are present, the skill can read them, even though the registry does not make that credential surface clear.

Why it was flagged

The code reads optional SkillPay-related environment values even though registry metadata declares no credentials or environment variables. No artifact shows the key being logged or transmitted.

Skill content
API_KEY = os.environ.get('SKILLPAY_API_KEY', '')
SKILL_ID = os.environ.get('SKILLPAY_SKILL_ID', '')
Recommendation

Run with only the environment variables you intend to expose, and have the publisher declare optional billing credentials in metadata.

What this means

Local files may retain user IDs, request types, errors, and usage counts after the audit task finishes.

Why it was flagged

The skill persists audit actions and trial-usage state locally. This is consistent with audit logging and trial limits, but the artifacts do not describe retention, cleanup, or exactly what identifiers may be stored.

Skill content
AUDIT_LOG_FILE = Path("~/.openclaw/fin_audit_logs/audit_chain.log").expanduser() ... self.trial_dir = Path("~/.openclaw/skill_trial").expanduser()
Recommendation

Review the files under ~/.openclaw/fin_audit_logs and ~/.openclaw/skill_trial, and define retention/deletion procedures for regulated data environments.