{"id":"CVE-2026-46700","sourceIdentifier":"security-advisories@github.com","published":"2026-07-07T21:17:25.560","lastModified":"2026-10-25T20:10:00.147","vulnStatus":"Deferred","cveTags":[],"descriptions":[{"lang":"en","value":"Actual is a local-first personal finance tool. Prior to 26.6.0, the GET /secret/:name endpoint in @actual-app/sync-server checks only that the caller has a valid session and does not verify the caller is an admin, while the sibling POST /secret/ handler enforces an admin check in OpenID mode. 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, including simplefin_accessKey, pluggyai_clientSecret, pluggyai_itemIds, and the gocardless secrets. This issue is fixed in version 26.6.0."},{"lang":"es","value":"Actual es una herramienta de finanzas personales local-first. Antes de la versión 26.6.0, el endpoint GET /secret/:name en @actual-app/sync-server verifica únicamente que el llamador tiene una sesión válida y no verifica que el llamador sea un administrador, mientras que el gestor POST /secret/ hermano impone una verificación de administrador en modo OpenID. Cualquier usuario BASIC autenticado no administrador en despliegues multiusuario OpenID puede sondear el almacén de secretos y averiguar qué integraciones de sincronización bancaria gestionadas por el administrador se han configurado, incluyendo simplefin_accessKey, pluggyai_clientSecret, pluggyai_itemIds y los secretos de gocardless. Este problema está solucionado en la versión 26.6.0."}],"affected":[{"source":"security-advisories@github.com","affectedData":[{"vendor":"actualbudget","product":"actual","versions":[{"version":"< 26.6.0","status":"affected"}]}]}],"metrics":{"cvssMetricV31":[{"source":"security-advisories@github.com","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N","baseScore":4.3,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"LOW","integrityImpact":"NONE","availabilityImpact":"NONE"},"exploitabilityScore":2.8,"impactScore":1.4}],"ssvcV203":[{"source":"134c704f-9b21-4f2e-91b3-4a467353bcc0","ssvcData":{"timestamp":"2026-07-08T14:43:08.864861Z","id":"CVE-2026-46700","options":[{"exploitation":"poc"},{"automatable":"no"},{"technicalImpact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}]},"weaknesses":[{"source":"security-advisories@github.com","type":"Secondary","description":[{"lang":"en","value":"CWE-285"}]}],"references":[{"url":"https://github.com/actualbudget/actual/commit/3494f78c9459ed9c412e28b500b675ba5eb72d4e","source":"security-advisories@github.com"},{"url":"https://github.com/actualbudget/actual/pull/7862","source":"security-advisories@github.com"},{"url":"https://github.com/actualbudget/actual/releases/tag/v26.6.0","source":"security-advisories@github.com"},{"url":"https://github.com/actualbudget/actual/security/advisories/GHSA-3f62-qv96-4p78","source":"security-advisories@github.com"},{"url":"https://github.com/actualbudget/actual/security/advisories/GHSA-3f62-qv96-4p78","source":"134c704f-9b21-4f2e-91b3-4a467353bcc0"}]}