obsidian-sync

ISSUES FOUND max severity HIGHSkillSpector Caution 43 registry clawhub.ai last scanned 1 scan

3 findings (2 high, 1 medium), mainly data exfiltration, unauthorized tool use. Most recent scan 2026-02-06.

This Obsidian sync skill presents MODERATE to HIGH security risks primarily around authentication token management, network exposure, and missing implementation files. The skill provides a file synchronization server with token-based authentication but lacks critical security hardening in its documentation and configuration examples. Key concerns include hardcoded token placeholders in service configs, network exposure via Tailscale without adequate security warnings, unrestricted file write operations, and missing script files that create tool shadowing risks. The skill would benefit from stronger security guidance, inclusion of actual implementation files, resource limits, and better credential management practices. While the core concept (localhost-bound sync server with token auth) is reasonable, the execution and documentation need security improvements before production use.

Scanner's overall assessment (LLM analyzer)

Second scanner: NVIDIA SkillSpector

Independent static run, no language model, over the same files as the Cisco scan above. How the two scanners compare across the whole corpus: Two scanners, one corpus.

What this skill does

Sync files between Clawdbot workspace and Obsidian. Run the sync server to enable two-way file synchronization with the OpenClaw Obsidian plugin.

Package
2 files, 13 KB
SKILL.md
330 words, 9 sections
Code
JavaScript (1)

SKILL.md covers: Obsidian Sync Server · Quick Start · Configuration · Security · API Endpoints · Exposing via Tailscale · Running as a Service · User systemd service · Obsidian Plugin

Findings

HIGH Hardcoded Authentication Token in Service Configuration Data Exfiltrationllm

The systemd service configuration example includes a hardcoded placeholder token 'your-token-here' in the Environment variable. Users may deploy this without changing it, or may store sensitive tokens in plaintext systemd files that could be exposed through misconfiguration or system compromise.

SKILL.md

Environment=SYNC_TOKEN=your-token-here
Remediation: Use systemd credential management (LoadCredential) or reference external secure storage. Document that tokens must never be hardcoded and should be stored in secure credential stores. Provide example using systemd's EnvironmentFile with restricted permissions (0600).
HIGH Network Exposure Risk with Insufficient Security Guidance Data Exfiltrationllm

The skill instructs users to expose the sync server via Tailscale without adequate security warnings. While localhost binding is mentioned, the Tailscale serve command exposes the service to the entire Tailnet. Combined with token-based auth only, this creates risk of unauthorized access if tokens are compromised or weak.

SKILL.md

tailscale serve --bg --https=18790 http://localhost:18790
Remediation: Add explicit security warnings about Tailscale exposure scope. Recommend Tailscale ACLs to restrict access to specific devices. Consider implementing additional authentication layers (mTLS, IP allowlisting). Document token rotation procedures.
MEDIUM Missing Script Implementation Creates Tool Shadowing Risk Unauthorized Tool Usellm

The skill references 'Obsidian.py' in instructions but this file is not found in the package. The actual implementation uses Node.js (sync-server.mjs) which is not included in the analyzed package. This mismatch between documented and actual tools creates confusion and potential for tool shadowing attacks where malicious actors could provide the 'missing' Obsidian.py file.

SKILL.md

Files referenced in instructions: Obsidian.py (not found). Instructions reference node scripts/sync-server.mjs but no scripts provided.
Remediation: Include all referenced script files in the skill package. Remove references to non-existent files. Ensure documentation accurately reflects the actual implementation. If sync-server.mjs is the correct implementation, include it in the package and update references.

What is in the package

FileKindSize
SKILL.mddoc2.9 KB
scripts/sync-server.mjsscript9.6 KB

External hosts referenced

github.com

Hostnames that appear in the skill's files. Referencing a host is not a finding; compare against the findings above and the skill's stated purpose.

Environment variables referenced

CONFIG SYNC_PORT SYNC_TOKEN SYNC_WORKSPACE CLAWDBOT_TOKEN

Package contents recorded 2026-10-22. The scan above ran against the version current at scan time; the two can differ if the skill has since been updated.

What we checked

What we did not check

Sources