CVE-2026-46672 Actual: CSV Formula Injection in `@actual-app/cli` `--format csv` Output via Custom `escapeCsv` Helper
Attackers can inject malicious formulas into CSV exports from the Actual CLI, leading to code execution or data exfiltration when opened in spreadsheet software.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2026-46672?
CVE-2026-46672 is a medium-severity vulnerability in actualbudget actual, published on 7 Jul 2026. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.
Official description
Actual is a local-first personal finance app. Prior to 26.6.0, @actual-app/cli ships a hand-rolled CSV serializer in packages/cli/src/output.ts used whenever the global --format csv option is passed, whose escapeCsv helper only handles RFC 4180 delimiter, quote, and newline escaping and does not neutralize standard CSV formula-injection prefixes. Any CLI command that streams an object array containing user-controlled strings, including transactions list, accounts list, payees list, categories list, tags list, category-groups list, rules list, schedules list, and query, can emit cells that auto-evaluate when the resulting CSV is opened in Excel, LibreOffice Calc, or Google Sheets, enabling data exfiltration and arbitrary formula execution. This issue is fixed in version 26.6.0.
Weakness: CWE-1236
Which versions are affected by CVE-2026-46672?
2 open source packages ship an affected version, including @actual-app/cli.
| Package | Affected | Fixed in |
|---|---|---|
@actual-app/cli npm | All versions | 26.6.0 |
@actual-app/cli npm | All versions | 26.6.0 |
How do I fix CVE-2026-46672?
Upgrade @actual-app/cli to 26.6.0 or later.
Is CVE-2026-46672 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-46672 exists.
Sources
Also known as GHSA-7gh7-258j-4mpq.