CVE-2026-57449: CWE-200: Exposure of Sensitive Information to an Unauthorized Actor in actualbudget actual
Actual is a local-first personal finance tool. Prior to 26.7.0, Actual Sync Server's CORS proxy is intended to let authenticated users fetch resources only from repositories listed in the official plugin allowlist. When `ACTUAL_GITHUB_TOKEN` is configured, the proxy automatically attaches the server's GitHub token to GitHub requests. The GitHub API allowlist check uses a raw `startsWith()` prefix test for `/repos/{owner}/{repo}` without requiring a path boundary after the repository name. If an allowlisted public plugin repository is `https://github.com/acme/plugin`, the proxy also accepts GitHub API URLs. Those URLs are outside the allowlisted repository but still pass because their API path starts with `/repos/acme/plugin`. The proxy then forwards the request with the server's `ACTUAL_GITHUB_TOKEN`, allowing any authenticated Actual user to read private GitHub resources reachable by that token. Version 26.7.0 fixes the issue.
AI Analysis
Technical Summary
The vulnerability (CVE-2026-57449) in Actualbudget's Actual tool affects the Sync Server's CORS proxy, which is designed to restrict resource fetching to repositories on an official plugin allowlist. When the server is configured with an ACTUAL_GITHUB_TOKEN, the proxy attaches this token to GitHub API requests. However, the allowlist check uses a raw startsWith() prefix test on the repository path without enforcing a path boundary, allowing requests to GitHub API URLs outside the allowed repositories to pass validation if their path starts with the allowed repository prefix. Consequently, authenticated users can leverage the proxy to access private GitHub resources accessible by the server token. This issue is fixed in version 26.7.0.
Potential Impact
Authenticated users of the Actual tool prior to version 26.7.0 can exploit the flawed allowlist validation to access private GitHub resources that the server's GitHub token has permissions for. This results in unauthorized exposure of sensitive information to users who should not have access, violating confidentiality.
Mitigation Recommendations
Upgrade to Actual version 26.7.0 or later, where the issue is fixed. No additional mitigation is required as the vendor has provided an official fix.
CVE-2026-57449: CWE-200: Exposure of Sensitive Information to an Unauthorized Actor in actualbudget actual
Description
Actual is a local-first personal finance tool. Prior to 26.7.0, Actual Sync Server's CORS proxy is intended to let authenticated users fetch resources only from repositories listed in the official plugin allowlist. When `ACTUAL_GITHUB_TOKEN` is configured, the proxy automatically attaches the server's GitHub token to GitHub requests. The GitHub API allowlist check uses a raw `startsWith()` prefix test for `/repos/{owner}/{repo}` without requiring a path boundary after the repository name. If an allowlisted public plugin repository is `https://github.com/acme/plugin`, the proxy also accepts GitHub API URLs. Those URLs are outside the allowlisted repository but still pass because their API path starts with `/repos/acme/plugin`. The proxy then forwards the request with the server's `ACTUAL_GITHUB_TOKEN`, allowing any authenticated Actual user to read private GitHub resources reachable by that token. Version 26.7.0 fixes the issue.
CVSS v4.0
Score 7.1high
Affected software
actualbudget
actual
pkg:github/actualbudget/actualRun on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability (CVE-2026-57449) in Actualbudget's Actual tool affects the Sync Server's CORS proxy, which is designed to restrict resource fetching to repositories on an official plugin allowlist. When the server is configured with an ACTUAL_GITHUB_TOKEN, the proxy attaches this token to GitHub API requests. However, the allowlist check uses a raw startsWith() prefix test on the repository path without enforcing a path boundary, allowing requests to GitHub API URLs outside the allowed repositories to pass validation if their path starts with the allowed repository prefix. Consequently, authenticated users can leverage the proxy to access private GitHub resources accessible by the server token. This issue is fixed in version 26.7.0.
Potential Impact
Authenticated users of the Actual tool prior to version 26.7.0 can exploit the flawed allowlist validation to access private GitHub resources that the server's GitHub token has permissions for. This results in unauthorized exposure of sensitive information to users who should not have access, violating confidentiality.
Mitigation Recommendations
Upgrade to Actual version 26.7.0 or later, where the issue is fixed. No additional mitigation is required as the vendor has provided an official fix.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-06-24T13:21:20.730Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 6ab6f6acf7a7c541065ec4db
Added to database: 09/25/2026, 22:33:16 UTC
Last enriched: 09/25/2026, 22:47:52 UTC
Last updated: 09/26/2026, 02:43:40 UTC
Views: 9
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.