Back to plugin

Security audit

NovoLens

Security checks across malware telemetry and agentic risk

Overview

The plugin is a coherent NovoLens bridge, but it needs Review because a bound remote client can trigger local OpenClaw security configuration changes without clear local confirmation.

Install only if you trust the NovoLens bridge and publisher. Keep the binding QR/code private because later scans can transfer the agent, and understand that the plugin polls the NovoLens platform, reports local monitoring/security telemetry, stores media/telemetry locally, and can change OpenClaw security configuration when a bound client triggers a security fix.

SkillSpector

By NVIDIA

SkillSpector was not run because this plugin release contains no bundled skills.

VirusTotal

60/60 vendors flagged this plugin as clean.

View on VirusTotal

Static analysis

Detected: suspicious.dangerous_exec, suspicious.destructive_delete_command

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
dist/index.js:195
Evidence
const qrProcess = spawn(command.command, command.args, {

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
dist/src/open-qr-window.js:19
Evidence
spawn("cmd", ["/c", "start", "", filePath], { detached: true, stdio: "ignore" }).unref();

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
dist/src/qr-server-guard.js:96
Evidence
return execFileSync(command, ["-NoProfile", "-Command", script], {

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
dist/src/remediation-executor.js:61
Evidence
return execSync(cmd, {

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
dist/src/security-scanner.js:26
Evidence
return execSync(cmd, { encoding: 'utf-8', timeout, stdio: ['pipe', 'pipe', 'pipe'] }).trim();

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
index.ts:240
Evidence
const qrProcess = spawn(command.command, command.args, {

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
src/open-qr-window.ts:19
Evidence
spawn("cmd", ["/c", "start", "", filePath], { detached: true, stdio: "ignore" }).unref();

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
src/qr-server-guard.ts:102
Evidence
return execFileSync(command, ["-NoProfile", "-Command", script], {

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
src/remediation-executor.ts:65
Evidence
return execSync(cmd, {

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
src/security-scanner.ts:74
Evidence
return execSync(cmd, { encoding: 'utf-8', timeout, stdio: ['pipe', 'pipe', 'pipe'] }).trim()

Documentation contains a destructive delete command without an explicit confirmation gate.

Warn
Code
suspicious.destructive_delete_command
Location
README.md:108
Evidence
rm -rf ~/.openclaw/extensions/novolens-plugin-openclaw