VS Code Marketplace Verified

Embedder Enterprise 2F3

by Embedder · 42 users
58d89f8c-9d09-566f-a329-9f2512b14ac7 | v0.3.212
83/ 100
HIGH risk
-3 since v0.3.202
Analyst verdict
Review before use

The AI review rates the findings as likely false positive, but the risk score (83/100) still counts them.

Analysis record

Analysed
1 weeks ago
Version
v0.3.209
Artifact
SHA256 C8A…A71
Source
Findings (non-IoC)

Is Embedder Enterprise 2F3 safe?

Embedder Enterprise 2F3 is an AI-assisted firmware engineering tool for VS Code, published by Embedder and installed by about 39 people. It declares no special permissions, and it ships a native Windows helper at extension/bin/embedder.exe alongside its JavaScript in extension/out/. An extension that compiles and flashes firmware has to run local build tools and talk to hardware, so the bundled binary and process launching line up with the stated work.

Most of what the scanner flagged sits in that build output. Sixteen obfuscation alerts, including OBfuscation-UNICODE_HEAVY in extension/out/extension.js and OBfuscation-HEX_STRING_HEAVY in extension/out/embeddercanvas/workbench/main.js, come from minified bundles for the console, graph, plan, review, serial and shader panels. Minifiers fold string tables into dense unicode and hex, and inline base64 assets trip the base64 rules. The thousands of network indicators are substrings rather than addresses: entries like 2-a.top-a.bottom-u.top and 64-pc-windows-msvc.zip are cut out of longer strings, the second being a Rust build target instead of a host.

One alert deserves naming. YARA--Base64_encoded_Executable fires at offset 704461 of extension/bin/embedder.exe, meaning a base64 block inside that binary decodes to a Windows executable. Self-extracting installers and compiled agents with embedded assets do this routinely, and nothing else in the extension points at credential access or at a destination for sending data out.

The scanner tripped on how the code is packaged: minified output, an embedded blob inside a helper binary, and thousands of substring matches from the extractor. None of it shows the extension reading secrets or moving source code off the machine.

Evidence ledger

Ranked by severity · findings with a source location link to the code viewer

300 detail rows
Showing 25 of 56 · highest severity first

YARA Rule Matches

30 rules
SeverityRuleHitsFilesMetadata
HIGHBase64 encoded Executable

Detects an base64 encoded executable (often embedded)

1
bin/embedder.exe
Florian Roth FP 2%
LOWpostinstall file download 21
out/webview-review.jsout/webview-serial.jsout/embeddercanvas/src/stepWorker.js +18 more
-
LOWBolonyokte 1
bin/embedder.exe
-
LOWNoUseEval 3
out/embeddercanvas/workbench/main.jsbin/embedder.exeout/extension.js
-
LOWcredential git credentials 3
bin/embedder.exeout/webview-review.jsout/webview/index.js
-
LOWpostinstall process injection 1
bin/embedder.exe
-
LOWSQLInjection 7
out/webview-sidebar.jsbin/embedder.exeout/webview-history.js +4 more
-
LOWNoUseWeakRandom 10
out/webview-serial.jsout/webview-console.jsout/extension.js +7 more
-
LOWcredential generic tokens 1
out/extension.js
-
LOWDebuggerStatementsShouldNotBeUsed 11
out/webview-console.jsout/webview-serial.jsout/webview/index.js +8 more
-
LOWUsingCommandLineArguments 2
bin/embedder.exeout/extension.js
-
LOWLocalStorageShouldNotBeUsed 4
out/embeddercanvas/workbench/main.jsout/webview/index.jsout/webview-console.js +1 more
-
LOWGEN PowerShell 1
bin/embedder.exe
-
LOWspyeye 1
bin/embedder.exe
-
LOWServerHostnameNotVerified 1
bin/embedder.exe
-
LOWpostinstall crypto operations 15
out/webview/index.jsout/embeddercanvas/src/stepWorker.jsout/webview-graph.js +12 more
-
LOWpostinstall file manipulation 23
out/webview-serial.jsout/webview-console.jsout/webview-review.js +20 more
-
LOWpostinstall environment access 2
out/embeddercanvas/vendor/license.emscripten.txtout/embeddercanvas/vendor/license.newstroke.txt
-
LOWNoUseSocketManually 1
out/extension.js
-
LOWpostinstall system command 30
out/webview/index.cssout/webview-serial.jsout/webview-console.js +27 more
-
LOWpostinstall registry modification 12
out/webview-serial.jsout/webview-plan.jsout/webview/index.js +9 more
-
LOWpostinstall obfuscation 19
out/webview-serial.jsout/webview/index.jsout/embeddercanvas/src/stepWorker.js +16 more
-
LOWpostinstall network communication 37
out/embeddercanvas/vendor/license.three-bvh-csg.txtout/webview-console.jsout/webview/index.css +34 more
-
LOWOriginsNotVerified 6
bin/embedder.exemedia/dashboard/host.htmlout/review-worker.js +3 more
-
LOWUsingShellInterpreterWhenExecutingOSCommands 2
bin/embedder.exeout/extension.js
-
LOWcredential postgres credentials 1
bin/embedder.exe
-
LOWWeakSSLTLSProtocolsShouldNotBeUsed 1
bin/embedder.exe
-
LOWpostinstall persistence mechanism 17
media/audit/fonts/Saans-Bold.otfout/webview-serial.jsout/KaTeX_Math-BoldItalic-VB447A4D.ttf +14 more
-
LOWcredential env files 9
out/webview-review.jsout/webview-plan.jsout/webview/index.js +6 more
-
LOWcredential vscode credentials 1
bin/embedder.exe
-

Publisher Evidence

Limited evidence

Embedder

Publisher identity, store signals, distribution reach, and warning signals used for context. Treat this as supporting evidence, not a clean bill of health.

37
Noisy-finding weight
x1.00
Publisher domain
embedder.com
Observed
Store verification signal
Not exposed
Not exposed
Extension portfolio
4
Portfolio

12 evidence rows available.

Finding Categories

1
Malware Signatures
16
Obfuscation
4,018
IoC Indicators

YARA Rules Matched

30 rules(244 hits)
Base64 encoded Executable postinstall file download Bolonyokte NoUseEval credential git credentials postinstall process injection SQLInjection NoUseWeakRandom credential generic tokens DebuggerStatementsShouldNotBeUsed UsingCommandLineArguments LocalStorageShouldNotBeUsed GEN PowerShell spyeye ServerHostnameNotVerified postinstall crypto operations +14 more

AI Security Report

AI Security Review

Evidence context: threat category none; evidence quality moderate.

The extension calls itself an AI firmware engineer for enterprise teams, and what it ships fits that job: a native Windows helper at extension/bin/embedder.exe plus compiled JavaScript under extension/out/. Firmware work means invoking compilers, flashers and serial tools, so process execution and workspace file access are the product. This build declares no host permissions and no editor permissions in its manifest; the reach comes from the bundled binary and the extension host that runs it.

Every obfuscation alert lands in build output. OBfuscation-UNICODE_HEAVY fires on extension/out/extension.js:151, extension/out/review-worker.js:7 and six webview bundles covering the console, graph, plan, review, serial and shader panels. OBfuscation-HEX_STRING_HEAVY fires on extension/out/embeddercanvas/workbench/main.js:3852, OBfuscation-LARGE_BASE64 on extension/out/webview/index.js:1232 and extension/out/extension.js:96, OBfuscation-FUNCTION_INDIRECT on extension/out/webview-plan.js:39 and extension/out/webview-shaders.js:78. Those rule families describe what a minifier does to string tables and inlined assets. They do not describe runtime behavior.

Credential reach is absent. No finding in this scan reports a read of .env, .git/config, SSH keys or cloud credential files, and none touches VS Code secret storage. For an extension that authenticates nothing and instead drives hardware, that is the expected shape.

One finding warrants a name. YARA--Base64_encoded_Executable matches at extension/bin/embedder.exe:704461, meaning a base64 block inside that binary decodes to a PE image. Self-extracting bundles, firmware toolchains and compiled agents carry assets that way, and so do droppers. The signature identifies the technique, and technique alone does not settle intent.

The network list carries no destination. Entries such as 2-a.top-a.bottom-u.top and 2fwww.in are concatenated or percent-encoded fragments, and 64-pc-windows-msvc.zip is a Rust compiler target triple that got read as a hostname. Nothing listed is a server the extension could call.

The strongest argument against this reading: a bundled executable holding an embedded payload, a display name carrying a version suffix (Embedder Enterprise 2F3), and 39 installs is the profile of a staged dropper. That argument would need either a place to send stolen data or a credential read to land. The scan reports neither, and the remaining volume is rule noise on minified files. What is left is a developer tool that ships a binary to do its job.

Key Reasons

  • Bundled bin/embedder.exe and process spawning are consistent with a firmware toolchain extension that must invoke compilers, flashers and serial tools
  • All 16 obfuscation findings are located in minified extension/out/ bundles, the output of a bundler rather than intentional obfuscation
  • Zero secret-category findings: no .env, .git/config, SSH key or cloud credential reads and no VS Code secret storage access
  • The endpoint list is extractor noise, down to the literal Rust target triple 64-pc-windows-msvc.zip being read as a hostname
  • The only non-noise hit is YARA--Base64_encoded_Executable at bin/embedder.exe:704461, a technique signature with no matching exfiltration path

False Positive Considerations

  • 4,021 IoC entries are substring fragments harvested from minified JavaScript (2-a.top-a.bottom-u.top, 2fwww.in) rather than resolvable hosts
  • 16 obfuscation alerts all fall inside extension/out/ minified bundles, which is build output
  • 243 code-smell findings are low-severity YARA matches on bundled JavaScript
  • The single malware-signature hit matches an embedded-asset pattern that self-extracting binaries and compiled agents also produce

Reviewed 2026-10-19; recommended action: monitor; model confidence 72%.

VS Code version history

Risk trend by version

6 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.

Selected
83
Change since first
+7
Change from previous
-3
Versions:
First analyzed version
0.3.188
Sep 11, 2026
Risk range
65 to 86
Across analyzed versions
Latest analyzed version
0.3.209
Oct 16, 2026
Selected version
high
Version
v0.3.209
1 weeks ago
Risk score
83
Findings
4326
Change vs previous
-3

Pick any point on the chart to explore that version's code below.

About This Extension

AI firmware engineer for enterprise teams

Frequently Asked Questions