Security incident · GHSA-3w55-933p-8pv5
Strands Agents: Local Privilege Escalation via Symlink Attack in Default Session File Storage
Published Oct 27, 2026 · catalog updated Oct 27, 2026 · Strands Agents: Local Privilege
Last checked Oct 28, 2026, 11 days ago.
Open the advisory
Exploitation likelihood is not on this record for GHSA-3w55-933p-8pv5. A missing EPSS score is not a low risk. Compare Strands Agents: Local Privilege with the linked advisory before you change production.
Gaps on this record
- The stored product name is a package slug. The name on this page is taken from the title (Strands Agents: Local Privilege).
- No vendor fix or required action is stored. Compare the linked advisory before you change production.
- EPSS is missing. A missing score is not a low risk.
- Severity
- High7.1
- Known exploitation
- Not in CISA/VulnCheck KEV
- EPSS
- Awaiting synchronization with FIRST
- Remediation
- Version ranges on file
- Affected products
- pip strands-agents
## Summary The defaults to storing session data in (a world-writable directory) using predictable file paths and a write pattern ( → ) that follows symbolic links. A local attacker can exploit this to overwrite arbitrary files or inject malicious session data for persistent prompt injection. ## Vulnerability Details **Component:** **Root Cause:** 1. Default storage directory is (line 58) — resolves to on Linux/macOS 2. The method (lines 116-123) writes to a predictable path without symlink protection: 3. follows symlinks — a pre-placed symlink at the path causes writes to an arbitrary target file 4. No integrity verification (HMAC/signature) on session files — tampered data is loaded as-is ## Attack Vectors ### 1. Arbitrary File Overwrite (Local Privilege Escalation) 1. Attacker pre-creates (or monitors for new directories via inotify) 2. Attacker creates a symlink: → (or any writable file) 3. Victim application writes session data → follows symlink → overwrites target file with JSON content 4. Attacker achieves code execution on next shell login (or targets , cron files, etc.) ### 2. Persistent Prompt Injection via Session Tampering 1. Attacker writes crafted message files into the session directory 2. Victim application restores the session → loads attacker-controlled conversation history 3. Injected messages instruct the agent to execute attacker commands on every future interaction 4. No integrity check prevents this — the SDK trusts all session files at face value ## Impact - **Arbitrary file overwrite** — local attacker can write attacker-controlled content to any file writable by the victim process - **Local privilege escalation** — via overwriting shell configs, SSH keys, cron jobs, or systemd user services - **Persistent agent compromise** — via session data injection, the agent follows attacker instructions indefinitely ## Reproduction ## Suggested Fix 1. **Use a user-private default directory** — or instead of 2. **Use with ** — refuses to follow symlinks
Are you affected?
Enter the version you run. The result uses only the ranges stored on this record.
The check returns affected, not affected, or incomplete. It does not guess a version that is missing from the record.
- pip strands-agents< 1.48.0
How to fix GHSA-3w55-933p-8pv5
Upgrade
GHSA-3w55-933p-8pv5 lists a fix boundary at 1.48.0. Compare the installed build with that boundary before you change production.
Version check
Affected < 1.48.0
Official advisories
What to do
Three questions, each answered from this record only. Confirm the vendor advisory before you patch.
Should you patch?
Exploitation likelihood is not on this record for GHSA-3w55-933p-8pv5. A missing EPSS score is not a low risk. Compare Strands Agents: Local Privilege with the linked advisory before you change production.
Which versions are affected?
Compare what you have installed with < 1.48.0. Compare the installed version with the linked vendor advisory before you change production.
What should an analyst verify?
CWE-59: Link Following. EPSS is not on this record yet. There is no CISA KEV listing. No Exploit-DB or Metasploit reference is linked. Use the source links for the original advisory.
Code
The project this record applies to. Exploit listings stay in References.
Timeline
Detection, updates, and resolution for this record.
Oct 27, 2026 · GitHub Advisory Database
Detected
## Summary The defaults to storing session data in (a world-writable directory) using predictable file paths and a write pattern ( → ) that follows symbolic links. A local attacker can exploit this to overwrite arbitrary files or inject malicious session data for persistent prompt injection. ## Vulnerability Details **Component:** **Root Cause:** 1. Default storage directory is (line 58) — resolve
Sources
- GitHub Advisory DatabasePackage advisoryGHSA-3w55-933p-8pv5
Strands Agents: Local Privilege Escalation via Symlink Attack in Default Session File Storage
github.com
References
Freshness
Last verified in this catalog Oct 27, 2026. Significant claims (KEV, EPSS, CVSS, affected ranges) come from the source rows above — open the original publisher for the authoritative advisory.
- GitHub Advisory DatabaseOct 28, 2026