Read the docs
TI-2026-02669 Aliases CVE-2026-3089GHSA-27vg-33gh-4hwg

Actual Sync Server 26.2.1 - Authenticated Path Traversal

Priority MEDIUM 63CWE-22Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
None
Attack complexity
Low
Attack requirements
None
Impact type
—
Confidentiality · integrity · availability
None · Low · None
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub.

Summary

Actual Sync Server allows authenticated users to upload files through POST /sync/upload-user-file. In versions prior to 26.3.0, improper validation of the user-controlled x-actual-file-id header means that traversal segments (../) can escape the intended directory and write files outside userFiles.This issue affects prior versions of Actual Sync Server 26.3.0.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00416 36th percentileScored 2026-11-07
Public exploit Yes 1 exploit referenceTagged by NVD
Fix Fixed @actual-app/sync-server (npm): 26.3.0

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
Yes
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
ActualActual Sync Server26.2.1—No fix listedCNA
—@actual-app/sync-server (npm)before 26.3.026.3.0Patch availableGHSA-27vg-33gh-4hwg
  • Actual Sync Server VendorActual Affected 26.2.1 Fixed in — No fix listed CNA
  • @actual-app/sync-server (npm) Vendor— Affected before 26.3.0 Fixed in 26.3.0 Patch available GHSA-27vg-33gh-4hwg

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:actualbudget:actual:*:*:*:*:*:node.js:*:*before 26.3.0Vulnerableactualbudget
  • cpe:2.3:a:actualbudget:actual:*:*:*:*:*:node.js:*:* Versions before 26.3.0 Vulnerable ·actualbudget

Remediation

  • Fix · GHSA-27vg-33gh-4hwg @actual-app/sync-server (npm) Fixed in 26.3.0 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-3089
  2. 2026-10-03 Alias added: GHSA-27vg-33gh-4hwg

References

  • TI-2026-21972 ActualBudget server is Missing Authentication for SimpleFIN and Pluggy AI bank sync endpoints CVSS 4.0CRITICAL 9.2
  • TI-2026-25729 Actual has Privilege Escalation via 'change-password' Endpoint on OpenID-Migrated Servers CVSS 3.1HIGH 8.8
  • TI-2026-22020 ActualBudget missing authorization in sync endpoints allows cross-user budget file access in multi-user mode CVSS 4.0MEDIUM 5.7

Sources