Embedder Enterprise EF7
The AI review rates the findings as likely false positive, but the risk score (83/100) still counts them.
Analysis record
- Analysed
- 6 days ago
- Version
- v0.3.209
- Artifact
- SHA256 165…5E5
- Source
- Findings (non-IoC)
Is Embedder Enterprise EF7 safe?
Embedder Enterprise is an AI coding assistant aimed at firmware engineers, with about 30,000 installs on OpenVSX. It declares no special permissions and no host permissions, which for a VS Code extension means it runs inside the normal editor sandbox and reads your project files the same way any build or lint tool does. Its compiled code sits in an extension/out/ folder, and the strings in there mention things like 64-pc-windows-msvc.zip and 64.so.1ld-musl-aarch64.so, the target names you see when a tool fetches a Rust compiler for cross-compiling to embedded hardware. Building firmware needs a toolchain and a copy of your source, and both show up here.
The scanner's loudest flags are network and obfuscation hits. The network ones all live in extension/out/webview-plan.js, where fetch calls were spotted at lines such as 80667 and 296241. That file is the assistant's plan panel, and webview code calling fetch is how a chat panel talks to the service behind it. The obfuscation flags, including OBFUSCATION-UNICODE_HEAVY at extension/out/extension.js:67432, land on that same compiled output. If a unicode-heavy block in extension.js were a hidden payload, that would be worth taking seriously, but it sits alongside base64 asset blobs and minified library code, which is what this rule pattern-matches inside a bundle.
There are no findings for credential files. Nothing matched .env files, .ssh keys, .git/config or cloud credential paths, and no secret-storage reads turned up. We also saw 3,755 address-like strings, and most are parsing noise: entries such as 3ƹ0.ma and 1hq.jo are not real hostnames, and one is a filename ending in trial-plan.md. One entry, 0blob.global, is the only one that could be a host, and nothing in the findings shows project contents being sent anywhere. With no malware signatures matched and no credential access, this reads as a compiler-downloading assistant that tripped generic rules.
Evidence ledger
Ranked by severity · findings with a source location link to the code viewer
YARA Rule Matches
30 rules| Severity | Rule | Hits | Files | Metadata |
|---|---|---|---|---|
| HIGH | Base64 encoded Executable Detects an base64 encoded executable (often embedded) | 1 | bin/embedder.exe | Florian Roth FP 2% |
| LOW | WeakSSLTLSProtocolsShouldNotBeUsed | 1 | bin/embedder.exe | - |
| LOW | postinstall persistence mechanism | 17 | out/webview-sidebar.jsout/webview-plan.jsout/webview-review.js +14 more | - |
| LOW | credential env files | 9 | out/webview-graph.jsbin/embedder.exeout/review-worker.js +6 more | - |
| LOW | credential vscode credentials | 1 | bin/embedder.exe | - |
| LOW | postinstall file download | 21 | out/embeddercanvas/src/stepWorker.jsout/webview-plan.jsout/embeddercanvas/workbench/main.js +18 more | - |
| LOW | Bolonyokte | 1 | bin/embedder.exe | - |
| LOW | NoUseEval | 3 | bin/embedder.exeout/extension.jsout/embeddercanvas/workbench/main.js | - |
| LOW | credential git credentials | 3 | out/webview/index.jsbin/embedder.exeout/webview-review.js | - |
| LOW | postinstall process injection | 1 | bin/embedder.exe | - |
| LOW | SQLInjection | 7 | out/webview-plan.jsout/webview-console.jsout/webview/index.js +4 more | - |
| LOW | NoUseWeakRandom | 10 | out/webview-plan.jsout/webview-shaders.jsout/webview-review.js +7 more | - |
| LOW | credential generic tokens | 1 | out/extension.js | - |
| LOW | DebuggerStatementsShouldNotBeUsed | 11 | out/webview-review.jsout/webview-plan.jsout/review-worker.js +8 more | - |
| LOW | UsingCommandLineArguments | 2 | out/extension.jsbin/embedder.exe | - |
| LOW | LocalStorageShouldNotBeUsed | 4 | out/webview/index.jsbin/embedder.exeout/embeddercanvas/workbench/main.js +1 more | - |
| LOW | GEN PowerShell | 1 | bin/embedder.exe | - |
| LOW | spyeye | 1 | bin/embedder.exe | - |
| LOW | ServerHostnameNotVerified | 1 | bin/embedder.exe | - |
| LOW | postinstall crypto operations | 15 | out/embeddercanvas/vendor/occt-import-js.jsout/webview-shaders.jsout/embeddercanvas/vendor/occt-import-js.wasm +12 more | - |
| LOW | postinstall file manipulation | 23 | out/webview-plan.jsout/webview-review.jsout/webview-serial.js +20 more | - |
| LOW | postinstall environment access | 2 | out/embeddercanvas/vendor/license.emscripten.txtout/embeddercanvas/vendor/license.newstroke.txt | - |
| LOW | NoUseSocketManually | 1 | out/extension.js | - |
| LOW | postinstall system command | 30 | out/webview-shaders.jsout/embeddercanvas/vendor/license.occt.txtout/webview-review.js +27 more | - |
| LOW | postinstall registry modification | 12 | out/webview-plan.jsout/review-worker.jsout/embeddercanvas/workbench/main.js +9 more | - |
| LOW | postinstall obfuscation | 19 | out/webview-plan.jsout/webview-shaders.jsout/webview-sidebar.js +16 more | - |
| LOW | postinstall network communication | 37 | out/embeddercanvas/vendor/license.robust-predicates.txtout/embeddercanvas/vendor/license.newstroke.txtout/webview-shaders.js +34 more | - |
| LOW | OriginsNotVerified | 6 | out/webview-console.jsout/webview/index.jsbin/embedder.exe +3 more | - |
| LOW | UsingShellInterpreterWhenExecutingOSCommands | 2 | out/extension.jsbin/embedder.exe | - |
| LOW | credential postgres credentials | 1 | bin/embedder.exe | - |
Publisher Evidence
Limited evidenceEmbedder
Publisher identity, store signals, distribution reach, and warning signals used for context. Treat this as supporting evidence, not a clean bill of health.
12 evidence rows available.
Finding Categories
YARA Rules Matched
30 rules(244 hits)AI Security Report
AI Security Review
Evidence context: threat category none; evidence quality moderate.
Embedder Enterprise is an AI firmware assistant published on OpenVSX by Embedder, with about 30,000 installs. Its compiled code sits in extension/out/, and the strings in that code explain most of what got flagged: the endpoint list contains 64-pc-windows-msvc.zip and 64.so.1ld-musl-aarch64.so, which are fragments of Rust target triples. A tool that sets up cross-compilation for embedded chips downloads compiler toolchains and reads the workspace it is building. Both activities are what the tool is for.
The extension declares no permissions and no host permissions, but VS Code extensions run with the user's own file access regardless, so the question is whether anything in the findings shows project contents leaving the machine. Nothing does. The 70 network findings are fetch calls, all in a single file, extension/out/webview-plan.js, at lines including 80667, 80870 and 296241. That is the assistant's plan panel, and a webview calling fetch is how such a panel reaches the service behind it. One file, one call pattern, with no companion file-read finding feeding it.
On credentials, there is nothing to weigh. No finding matches .env files, .ssh keys, .git/config, cloud credential paths or VS Code secret storage. The 173 code-smell entries are generic Node.js pattern matches of the kind that fire on any bundled JavaScript, and the malware signature and malware buckets are both empty.
The obfuscation flags are the part worth naming. OBFUSCATION-UNICODE_HEAVY appears at extension/out/extension.js:67432, extension/out/webview-serial.js:4377, extension/out/webview-review.js:6320, extension/out/webview-plan.js:19686, extension/out/webview-console.js:27436 and extension/out/review-worker.js:3957, with OBFUSCATION-LARGE_BASE64 at webview-review.js:56566 and webview-plan.js:13385, and OBFUSCATION-FUNCTION_INDIRECT at webview-plan.js:55796. Every one of those paths is inside out/, the build directory. Minified bundle output carries large string tables, inlined assets and library indirection, which is what these rules match. extension.js is the file that runs at activation, so a unicode-heavy block there is the strongest counterargument to treating this as noise. It does not change the conclusion, because that flag sits in the same compiled bundle as the base64 assets, and nothing else in these findings shows a second stage being fetched or run.
The 3,755 address-like strings are mostly extractor debris. Entries such as 3ƹ0.ma, 1hq.jo and 4yq.jo are not valid hostnames, and 1778200909714-trial-plan.md is a filename. 0blob.global is the one entry that could be a host. Nothing in the findings pairs it with a workspace read or a credential read, so there is no exfiltration path described here.
Key Reasons
- No malware signature, malware or secret-bucket findings, and no postinstall or credential-access behavior anywhere in the results.
- All 70 network findings are fetch calls confined to one bundled webview file, extension/out/webview-plan.js, consistent with a UI panel calling its backend service.
- Obfuscation hits (OBFUSCATION-UNICODE_HEAVY, OBFUSCATION-LARGE_BASE64, OBFUSCATION-FUNCTION_INDIRECT) sit entirely on compiled out/ build output alongside bundled libraries and inlined assets.
- The endpoint list is dominated by parse artifacts such as 3ƹ0.ma, 1hq.jo and 1778200909714-trial-plan.md, which are not valid hostnames.
- Toolchain strings 64-pc-windows-msvc.zip and 64.so.1ld-musl-aarch64.so explain tool downloads for a firmware cross-compilation tool.
False Positive Considerations
- IoC extractor artifacts from minified bundles: invalid hostnames and filename fragments counted as network endpoints
- Minified and bundled build output in extension/out/ triggering obfuscation rules on string tables and inlined base64 assets
- Generic Node.js code-smell matches that fire on any non-trivial bundled JavaScript
- Fetch calls inside a webview bundle, which is expected UI behavior rather than exfiltration
Reviewed 2026-09-26; recommended action: suppress false positive; model confidence 80%.
Open VSX version history
Risk trend by version
9 analyzed versions. Each point is the latest successful scan for that version; failed zero-score scans are hidden. Dates are based on first seen by risky plugins.
Pick any point on the chart to explore that version's code below.
Source Code Not Available
Source code is not available for this version of the extension.
About This Extension
Frequently Asked Questions
Similar Extensions
Related extensions from the same publisher or marketplace