live · scanning repos
Scanrepo
github.com
DANGER
malware detected
github.com / sup3rus3r

sup3rus3r/obsidian-ai

Python·296 files·commit 1213550·scanned 3d ago·cached ✓
70/100
DANGEROUS
Sensitive capability combinations reachable from entry points. Do not run without review.

This repository contains patterns associated with malware. Do NOT run this code.

verdict accurate?
threat-state: dangerouslive

FINDINGS ░▒▓

criticaleval() usage detectedeval() executes arbitrary code and is commonly used in malware to run obfuscated payloads fetched from remote servers.backend/dag_executor.py
    This is a plain string-substitution pass over a constrained grammar — no
    eval(), no expression language — by design (see dag_executor design notes:
    n8n's full JS-expression templating is a...
+8
criticalPython dynamic code executioneval(), exec() or compile() on untrusted input can execute arbitrary code. Common in Python malware for running obfuscated payloads.backend/dag_executor.py
    This is a plain string-substitution pass over a constrained grammar — no
    eval(), no expression language — by design (see dag_executor design notes:
    n8n's full JS-expression templating is a...
+7
criticalPython dynamic code executioneval(), exec() or compile() on untrusted input can execute arbitrary code. Common in Python malware for running obfuscated payloads.backend/python_tool_runner.py

Tool code used to be exec()'d inside the server process, where it could read the
decrypted provider keys and the JWT/encryption secrets in os.environ, and could
hang or crash the server. Each call no...
+7
criticaleval() usage detectedeval() executes arbitrary code and is commonly used in malware to run obfuscated payloads fetched from remote servers.backend/secret_placeholder.py
Syntax modeled on dag_executor.py's {{ nodes.<id>.output.<path> }}
interpolator — plain regex substitution, not eval()/an expression language,
for the same reasons documented there (injection surface,...
+8
criticalPython dynamic code executioneval(), exec() or compile() on untrusted input can execute arbitrary code. Common in Python malware for running obfuscated payloads.backend/secret_placeholder.py
Syntax modeled on dag_executor.py's {{ nodes.<id>.output.<path> }}
interpolator — plain regex substitution, not eval()/an expression language,
for the same reasons documented there (injection surface,...
+7
criticaleval() usage detectedeval() executes arbitrary code and is commonly used in malware to run obfuscated payloads fetched from remote servers.backend/web_tools.py

calculate deliberately does NOT use Python eval() — it walks a restricted
AST, allowlisting only numeric literals, arithmetic operators, and a small
math function table. Any other node (names, attrib...
+8
infoSuspicious files are not reachable from entry pointsFlagged files exist but are not imported by any entry point. They may be dead code, tests, or attack payloads triggered by another mechanism.+2
warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.frontend/app/(authenticated)/channels/[id]/page.tsx+3
warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.frontend/components/dialogs/tool-dialog.tsx+3
warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.frontend/components/playground/artifact-panel.tsx+3

Scores are heuristics. A “safe” verdict means no known-malicious patterns were found — clever malware can look boring. Wrong verdict? Flag it above; confirmed false positives become regression tests.

255 files scanned @ 1213550 | 10/26/2026 | heuristic scan — always review manually

risk by category
code execution25
network & exfiltration0
file system access0
obfuscation9
supply chain0
owasp / injection0
telemetry
files 255/296rules hit 10engine v7commit 1213550

github

sup3rus3r/obsidian-ai

Obsidian AI is an open-source platform that gives you a full visual interface for building, managing, and running AI agents — no SDKs, no boilerplate, no glue code required.

Python
68
15
245d
296 files
255 scanned(86%)
1213550

architecture░▒▓

entry (1) flagged (8) pkg (311)
561 nodes · 1890 edgesscroll to zoom · click node to jump to finding
⚠️ DANGEROUS (70/100) — sup3rus3r/obsidian-ai — ScanRepo