GHSA-j26j-7qc4-3mrf — openclaw
Fix: openclaw/openclaw@347f7b9GHSA-j26j-7qc4-3mrf is a security vulnerability in openclaw. A fix is available for openclaw — see the affected versions and patch details below.
OpenClaw: MS Teams fileConsent/invoke missing conversation binding allowed cross-conversation pending-upload consumption
Real-World Exposure
How broadly this vulnerability is actually deployed: weekly install volume shows current usage, and reverse-dependency count shows how many other packages break if it stays unpatched.
openclawnpmDescription
Summary
In openclaw MS Teams file-consent flow, pending uploads were authorized by uploadId alone. fileConsent/invoke did not verify the invoke conversation against the conversation that created the pending upload.
Impact
An attacker who obtained a valid uploadId within TTL could trigger cross-conversation upload completion (accept path) or cancel a victim pending upload (decline path).
Technical Details
- Pending uploads stored
conversationId, but invoke handling consumed byuploadIdonly. - The invoke path did not enforce conversation binding before
uploadToConsentUrl(...)and pending-upload removal. - Fix binds accept/decline handling to normalized conversation id match before consuming pending upload state.
Affected Packages / Versions
- Package:
openclaw(npm) - Latest published npm version (as of February 26, 2026):
2026.2.24 - Vulnerable range:
<= 2026.2.24 - Patched in release:
2026.2.25
Remediation
Upgrade to openclaw 2026.2.25 (or later) once published.
Fix Commit(s)
347f7b9550064f5f5b33c6e07f64e85b9657b6f1
Release Process Note
patched_versions is pre-set to the release (2026.2.25). Advisory published with npm release 2026.2.25.
OpenClaw thanks @tdjackey for reporting.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 📦npm | openclaw | all versions | 2026.2.25npm install openclaw@2026.2.25 |
Detection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for openclaw, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update openclaw to 2026.2.25 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-j26j-7qc4-3mrf is resolved across your whole dependency graph.
Workarounds
If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.
How O3 protects you
O3 Security's impact-aware SCA analyses which vulnerable code paths your application actually calls, so a match like GHSA-j26j-7qc4-3mrf can be triaged on real exposure rather than presence alone.
Tailored to GHSA-j26j-7qc4-3mrf. Runtime protection reduces exposure until a permanent patch is applied and verified — it complements patching, it doesn't replace it.
Frequently Asked Questions
Is GHSA-j26j-7qc4-3mrf in your dependencies?
O3 Security finds GHSA-j26j-7qc4-3mrf across npm dependencies, including transitive ones, and its impact-aware SCA ranks findings by whether your code actually calls the vulnerable path.