registry  /  turbollm  /  1.6.5

turbollm@1.6.5

TurboLLM — local LLM platform: run any inference engine auto-tuned to your GPU, with a web UI and OpenAI/Anthropic-compatible API. Point Claude Code at your own machine in one command.

Static Scan Results

scanned 6d ago · by rust-scanner

Static analysis flagged 18 finding(s) at 93.0% confidence. This version is warn-only unless an AI or security-team review confirms malicious behavior.

Static reason
One or more suspicious static signals were detected.; previous stored version diff introduced dangerous source

Decision evidence

public snapshot
Behavioral surface
Source
ChildProcessCryptoDynamicRequireEnvironmentVarsFilesystemNativeBindingsNetworkShell
Supply chain
HighEntropyStringsMinifiedObfuscatedProtestwareTelemetryUrlStrings
ManifestNo manifest risk signals triggered.
scanned 86 file(s), 6.59 MB of source, external domains: 127.0.0.1, api.github.com, api.githubcopilot.com, api.tavily.com, chevrotain.io, cmake.org, developer.nvidia.com, en.wikipedia.org, example.com, foo.bar, gcc.gnu.org, git-scm.com, github.com, huggingface.co, kagi.com, langium.org, mcp.apify.com, mcp.atlassian.com, mcp.cloudflare.com, mcp.linear.app, mcp.mixpanel.com, mcp.neon.tech, mcp.stripe.com, mcp.supabase.com, mcp.zapier.com, nodejs.org, ns.adobe.com, pypi.org, radix-ui.com, react.dev, registry.npmjs.org, visualstudio.microsoft.com, www.ibm.com, www.w3.org, www.xfa.org

Source & flagged code

7 flagged · loading source
dist/cli.jsView file
3// src/cli.ts L4: import { spawn as spawn5 } from "child_process"; L5: import { openSync as openSync3, readFileSync as readFileSync11 } from "fs";
High
Child Process

Package source references child process execution.

dist/cli.jsView on unpkg · L3
498const ps = `Expand-Archive -LiteralPath '${archive.replace(/'/g, "''")}' -DestinationPath '${destDir.replace(/'/g, "''")}' -Force`; L499: await execFileP("powershell", ["-NoProfile", "-NonInteractive", "-Command", ps], { maxBuffer: 16 * 1024 * 1024 }); L500: } else {
High
Shell

Package source references shell execution.

dist/cli.jsView on unpkg · L498
9772// src/engines/build-prereqs.ts L9773: import { execFile as execFile8 } from "child_process"; L9774: import { delimiter, join as join18 } from "path"; ... L9778: const dirs = toolchainDirs.map((d) => d.trim()).filter(Boolean); L9779: const env = { ...process.env }; L9780: const key = Object.keys(env).find((k) => k.toLowerCase() === "path") ?? "PATH"; ... L9786: var INSTALL_URLS = { L9787: git: "https://git-scm.com/downloads", L9788: cmake: "https://cmake.org/download/",
High
Same File Env Network Execution

A single source file combines environment access, network access, and code or shell execution; review context before blocking.

dist/cli.jsView on unpkg · L9772
3// src/cli.ts L4: import { spawn as spawn5 } from "child_process"; L5: import { openSync as openSync3, readFileSync as readFileSync11 } from "fs"; ... L24: function legacyDataDir() { L25: const base2 = process.platform === "win32" ? process.env.APPDATA || join(homedir(), "AppData", "Roaming") : process.platform === "darwin" ? join(homedir(), "Library", "Application ... L26: return join(base2, "turbollm"); ... L50: if (!existsSync(cfgPath)) return; L51: const cfg2 = JSON.parse(readFileSync(cfgPath, "utf8")); L52: let changed = false; ... L294: if (c.comfyui.url && !/^https?:\/\//i.test(c.comfyui.url)) { L295: throw new ValueError("comfyui.url", "must be an http(s):// origin (e.g. http://127.0.0.1:8188)"); L296: }
High
Sandbox Evasion Gated Capability

Source gates dangerous network, credential, or execution behavior behind CI, host, platform, time, or geo fingerprint checks.

dist/cli.jsView on unpkg · L3
matchType = previous_version_dangerous_delta matchedPackage = turbollm@1.6.4 matchedIdentity = npm:dHVyYm9sbG0:1.6.4 similarity = 0.835 summary = stored previous version shares package body but lacks this dangerous source file
High
Previous Version Dangerous Delta

This package version adds a dangerous source file absent from the previous stored version; route for source-aware review.

dist/cli.jsView on unpkg
3// src/cli.ts L4: import { spawn as spawn5 } from "child_process"; L5: import { openSync as openSync3, readFileSync as readFileSync11 } from "fs"; ... L24: function legacyDataDir() { L25: const base2 = process.platform === "win32" ? process.env.APPDATA || join(homedir(), "AppData", "Roaming") : process.platform === "darwin" ? join(homedir(), "Library", "Application ... L26: return join(base2, "turbollm"); ... L50: if (!existsSync(cfgPath)) return; L51: const cfg2 = JSON.parse(readFileSync(cfgPath, "utf8")); L52: let changed = false; ... L294: if (c.comfyui.url && !/^https?:\/\//i.test(c.comfyui.url)) { L295: throw new ValueError("comfyui.url", "must be an http(s):// origin (e.g. http://127.0.0.1:8188)"); L296: }
Medium
Unsafe Vm Context

Package source executes code through a VM context API.

dist/cli.jsView on unpkg · L3
dist/webdist/assets/ChatScreen-7bIHB35Z.jsView file
4`);r=c.pop()??"";let d="";for(const h of c)if(h.startsWith("event: "))d=h.slice(7).trim();else if(h.startsWith("data: ")){const u=h.slice(6).trim();try{const p=JSON.parse(u);d&&(yi... L5: `).join("")}}function $n(o,t){const e=t?URL.parse(o,t):URL.parse(o);return/https?:/.test(e?.protocol??"")}function ye(o){o.preventDefault()}function Bt(o){o.preventDefault(),o.stop... L6: struct Uniforms {
Medium
Dynamic Require

Package source references dynamic require/import behavior.

dist/webdist/assets/ChatScreen-7bIHB35Z.jsView on unpkg · L4

Findings

5 High6 Medium7 Low
HighChild Processdist/cli.js
HighShelldist/cli.js
HighSame File Env Network Executiondist/cli.js
HighSandbox Evasion Gated Capabilitydist/cli.js
HighPrevious Version Dangerous Deltadist/cli.js
MediumDynamic Requiredist/webdist/assets/ChatScreen-7bIHB35Z.js
MediumUnsafe Vm Contextdist/cli.js
MediumNetwork
MediumEnvironment Vars
MediumProtestware
MediumStructural Risk Force Deep Review
LowNon Install Lifecycle Scripts
LowScripts Present
LowFilesystem
LowObfuscated
LowHigh Entropy Strings
LowTelemetry
LowUrl Strings