Advisory Database
  • Advisories
  • Dependency Scanning
  1. npm
  2. ›
  3. @actual-app/sync-server
  4. ›
  5. CVE-2026-46700

CVE-2026-46700: @actual-app/sync-server's missing authorization on GET /secret/:name allows non-admin OpenID users to enumerate admin-configured bank-sync secrets

June 22, 2026

In @actual-app/sync-server, the GET /secret/:name endpoint (app-secrets.js:53) checks only that the caller has a valid session — it does not verify the caller is an admin. The sibling POST /secret/ handler does enforce an admin check in OpenID mode, exposing an authorization asymmetry. Any authenticated non-admin (BASIC) user in OpenID multi-user deployments can probe the secrets store and learn which admin-managed bank-sync integrations have been configured (existence, not values). This includes integration credentials that are not otherwise observable to non-admins, such as simplefin_accessKey, pluggyai_clientSecret, pluggyai_itemIds, and the gocardless_* secrets.

References

  • github.com/actualbudget/actual/security/advisories/GHSA-3f62-qv96-4p78
  • github.com/advisories/GHSA-3f62-qv96-4p78
  • nvd.nist.gov/vuln/detail/CVE-2026-46700

Code Behaviors & Features

Detect and mitigate CVE-2026-46700 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions before 26.6.0

Fixed versions

  • 26.6.0

Solution

Upgrade to version 26.6.0 or above.

Impact 4.3 MEDIUM

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N

Learn more about CVSS

Weakness

  • CWE-285: Improper Authorization

Source file

npm/@actual-app/sync-server/CVE-2026-46700.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Tue, 23 Jun 2026 12:23:39 +0000.