Untriaged
Permalink
CVE-2026-50179
4.2 MEDIUM
- CVSS version (CVSS): 3.1
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): High (H)
- Privileges Required (PR): None (N)
- User Interaction (UI): Required (R)
- Scope (S): Unchanged (U)
- Confidentiality (C): Low (L)
- Integrity (I): Low (L)
- Availability (A): None (N)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): High (H)
- Modified Privileges Required (MPR): None (N)
- Modified User Interaction (MUI): Required (R)
- Modified Confidentiality (MC): Low (L)
- Modified Scope (MS): Unchanged (U)
- Modified Integrity (MI): Low (L)
- Modified Availability (MA): None (N)
Activity log
- Created suggestion
Actual: CSV Formula Injection in Transaction Export via Imported Payee/Notes Fields
Actual is a local-first personal finance tool. Prior to 26.6.0, exportToCSV and exportQueryToCSV in packages/loot-core/src/server/transactions/export/export-to-csv.ts pass user-controlled Payee, Notes, Account, and Category strings to csv-stringify with no cast callback and no formula-prefix neutralization. Strings that begin with equals sign, plus, minus, at sign, tab, or carriage return survive verbatim into the exported CSV, and when a recipient opens the file in Excel, LibreOffice Calc, or Google Sheets, the strings are interpreted as formulas, enabling transaction data exfiltration and attacker-chosen spreadsheet display values. This issue is fixed in version 26.6.0.
References
-
https://github.com/actualbudget/actual/security/advisories/GHSA-xqjm-27pc-rvwm x_refsource_CONFIRM
-
https://github.com/actualbudget/actual/releases/tag/v26.6.0 x_refsource_MISC
Affected products
actual
- ==< 26.6.0
Matching in nixpkgs
pkgs.actual-server
Super fast privacy-focused app for managing your finances
Package maintainers
-
@oddlama oddlama <oddlama@oddlama.org>
-
@yash-garg Yash Garg <me@yashgarg.dev>
-
@PatrickDaG Patrick <patrick-nixos@failmail.dev>
-
@honnip Jung seungwoo <me@honnip.page>