DaVinci Auto Editor

Security checks across malware telemetry and agentic risk

Overview

The skill’s video-editing workflow is mostly coherent, but it needs review because it sends credentials and local media metadata to a configurable cloud service and lets the cloud task ID influence local write paths.

Only run this skill with a cloud API you control or strongly trust, preferably over HTTPS. Do not use the sample raw IP with real credentials. Use a limited/revocable API key, choose a narrow material_path, do not run with elevated privileges, and consider patching the taskId/output-path handling before use.

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.

#
ASI02: Tool Misuse and Exploitation
Medium
What this means

A malicious or compromised cloud API could cause the skill to write its fixed output files outside the intended _davinci_auto_editor folder, limited by the user's filesystem permissions.

Why it was flagged

The task ID comes from the cloud API response and is used directly as a local path segment for output files; the visible code does not sanitize path separators or '..' traversal.

Skill content
const taskId = task.id; ... const outputDir = resolveOutputDir(config.material_path, taskId); ... return path.join(path.dirname(materialRoot), '_davinci_auto_editor', taskId);
Recommendation

Sanitize taskId to a safe filename token, reject path separators and '..', and verify the resolved output directory remains inside the intended parent folder before writing.

#
ASI03: Identity and Privilege Abuse
High
What this means

If a user copies the example endpoint or uses an untrusted/non-HTTPS API service, their API key could be exposed or sent to the wrong service.

Why it was flagged

The script sends the configured API key as a bearer token to whatever api_base_url is configured; the provided example uses plaintext HTTP to a raw IP address, and the registry metadata says there is no primary credential.

Skill content
'authorization': `Bearer ${this.apiKey}`
Recommendation

Use only a trusted HTTPS API base URL, avoid the sample raw IP for real keys, use least-privileged/revocable API keys, and update metadata to declare the required credential.

#
ASI04: Agentic Supply Chain Vulnerabilities
Medium
What this means

Users may unintentionally send project details and credentials to an unverified plaintext endpoint.

Why it was flagged

The sample configuration points users at an unauthenticated-looking raw IP over HTTP, creating a provenance and transport-security gap for a cloud service that receives credentials and local media metadata.

Skill content
"api_base_url": "http://43.137.46.105:8787"
Recommendation

Replace the example with a documented HTTPS domain, explain who operates the cloud API, and add validation or warnings for non-HTTPS endpoints.

#
ASI07: Insecure Inter-Agent Communication
Low
What this means

The cloud service can learn filenames, full local paths, file sizes, and modification times for supported media files under the configured material folder.

Why it was flagged

The skill recursively builds a media index containing local absolute paths and posts it to the cloud API; this is aligned with the cloud editing purpose but exposes local project metadata.

Skill content
absolutePath: fullPath, ... relativePath: path.relative(rootDir, fullPath) ... await api.post(`/v1/tasks/${encodeURIComponent(taskId)}/material-index`, { materials, summary: buildMaterialSummary(materials) });
Recommendation

Point material_path only at the intended project folder, avoid private unrelated media, and prefer sending relative paths or redacted paths unless absolute paths are truly needed.