You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Security] Salesforce session tokens persisted unencrypted in chrome.storage.local #64
saveOrg stores the full SalesforceOrg including accessToken in chrome.storage.local — the sid lands unencrypted on disk and survives browser restarts. This contradicts the same file's own docstring ("session: ephemeral data such as active tokens") and the checkpoint comment "credentials … remain session/file scoped". setSessionToken (session-scoped) exists but is written in addition to, not instead of, local storage.
Evidence
src/services/storage/index.ts:44-48 (and docstring line 11, comment line 641)
Strip accessToken/tokenExpiresAt before saveOrg and re-derive from cookies on demand (loginForTab already does this), or keep tokens only in chrome.storage.session.
Environment
Commit 74cf21b (main), WaveLink 0.6.0. Found in the 2026-08-31 adversarial audit (code-verified).
Activity
Exotic209093 commentedon Sep 9, 2026
Fixed in #118
fix: harden security for API client, storage, and exports (#64, #65, #66