Skip to main content

Actual Budget EUVDEUVD-2026-36547

| CVE-2026-42890 MEDIUM
Code Injection (CWE-94)
2026-06-08 https://github.com/actualbudget/actual GHSA-7rvm-xjpp-63r9
4.8
CVSS 4.0 · Vendor: https://github.com/actualbudget/actual
Share

Severity by source

Vendor (https://github.com/actualbudget/actual) PRIMARY
4.8 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

Primary rating from Vendor (https://github.com/actualbudget/actual) · only source for this CVE.

CVSS VectorVendor: https://github.com/actualbudget/actual

CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
X

Lifecycle Timeline

3
CVSS changed
Jun 12, 2026 - 20:22 NVD
4.8 (MEDIUM)
Source Code Evidence Fetched
Jun 08, 2026 - 18:51 vuln.today
Analysis Generated
Jun 08, 2026 - 18:51 vuln.today

DescriptionCVE.org

Summary

A electron run as node vulnerability was identified in actual (macOS application, version 25.x (Electron 39.2.7)).

Vulnerability Type: Electron Run As Node

Description

ELECTRON_RUN_AS_NODE fuse enabled (Electron 39.2.7) - app can be converted to Node.js REPL for arbitrary code execution

Impact

An attacker who can place a file on disk or control command-line arguments can invoke the signed Actual.app binary with ELECTRON_RUN_AS_NODE=1 to execute arbitrary Node.js code inheriting the apps entitlements and code signature. This bypasses macOS Gatekeeper review of the payload: the Node.js script runs as Actual, under Actuals bundle ID and signed identity, and has access to any entitlements the app carries (network, file access, keychain, automation). Combined with any downloader (browser, mail attachment, Slack link) this becomes a signed-binary-abuse primitive on every Mac with Actual installed.

AnalysisAI

Arbitrary Node.js code execution via signed Actual Budget macOS binary (versions prior to 26.5.0) is enabled by the ELECTRON_RUN_AS_NODE fuse being left active in the Electron 39.2.7 runtime. An attacker who can place a script on disk or influence the process environment can invoke Actual.app with ELECTRON_RUN_AS_NODE=1, causing the signed binary to act as a Node.js interpreter executing attacker-controlled code under Actual's macOS code signature and entitlements. No public exploit identified at time of analysis; a vendor-released patch exists in version 26.5.0 per GHSA-7rvm-xjpp-63r9.

Technical ContextAI

Electron ships a 'fuses' system - compile-time boolean flags baked into the application binary that govern runtime capabilities. The ELECTRON_RUN_AS_NODE fuse, when left enabled, allows any caller to convert the Electron binary into a generic Node.js interpreter by setting the ELECTRON_RUN_AS_NODE=1 environment variable before invocation, bypassing all Electron application initialization logic. In Actual Budget 25.x (pkg:npm/actual, Electron 39.2.7), this fuse was not disabled at build time. CWE-94 (Improper Control of Generation of Code - Code Injection) captures the root cause: the application binary provides an unconstrained code execution pathway that accepts externally supplied code. The critical macOS-specific amplifier is that the resulting Node.js process inherits the app's Apple code signature, bundle ID, and declared entitlements (keychain, file system, network, automation), meaning macOS Gatekeeper and TCC evaluate the process as the legitimate Actual.app rather than the attacker's payload.

RemediationAI

Upgrade Actual Budget to version 26.5.0 or later, which resolves the issue by disabling the ELECTRON_RUN_AS_NODE fuse in the application binary, as confirmed by GHSA-7rvm-xjpp-63r9 (https://github.com/actualbudget/actual/security/advisories/GHSA-7rvm-xjpp-63r9). Prior to patching, defenders can deploy an MDM configuration profile or endpoint security policy that blocks or alerts on processes spawned with ELECTRON_RUN_AS_NODE=1 in their environment - note that this requires EDR support for environment variable inspection and may generate false positives if other Electron apps are present. Restricting write access to directories from which Actual.app is likely invoked (e.g., Downloads, /tmp) limits the file-placement vector but does not eliminate exploitation via command-line argument control. No workaround fully neutralizes the fuse-level capability without recompiling or patching the binary itself; upgrading to 26.5.0 is the only complete remediation.

CVE-2024-55591 CRITICAL POC
9.8 Jan 14

FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote

CVE-2014-7205 CRITICAL POC
10.0 Oct 08

Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t

CVE-2025-59528 CRITICAL POC
10.0 Sep 22

Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete

CVE-2017-14849 HIGH POC
7.5 Sep 28

Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc

CVE-2017-5941 CRITICAL POC
9.8 Feb 09

An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner

CVE-2014-3744 HIGH POC
7.5 Oct 23

Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi

CVE-2014-9566 HIGH POC
7.5 Mar 10

Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin

CVE-2013-4660 MEDIUM POC
6.8 Jun 28

The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic

CVE-2015-5688 MEDIUM POC
5.0 Sep 04

Directory traversal vulnerability in lib/app/index.js in Geddy before 13.0.8 for Node.js allows remote attackers to read

CVE-2026-45321 CRITICAL POC
9.6 May 12

Credential-harvesting malware compromised 84 versions of 42 TanStack npm packages on 2026-05-11 via chained GitHub Actio

CVE-2014-7192 CRITICAL POC
10.0 Dec 11

Eval injection vulnerability in index.js in the syntax-error package before 1.1.1 for Node.js 0.10.x, as used in IBM Rat

CVE-2013-4450 MEDIUM POC
5.0 Oct 21

The HTTP server in Node.js 0.10.x before 0.10.21 and 0.8.x before 0.8.26 allows remote attackers to cause a denial of se

Share

EUVD-2026-36547 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy