Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
638924c544 |
@@ -1,159 +0,0 @@
|
|||||||
# Security Advisory: High Severity Vulnerabilities - May 30, 2026
|
|
||||||
|
|
||||||
This advisory addresses 3 HIGH severity vulnerabilities identified by Vanta security scans.
|
|
||||||
|
|
||||||
## Summary
|
|
||||||
|
|
||||||
| CVE | Package | Severity | CVSS | Status | Fixed Version |
|
|
||||||
|-----|---------|----------|------|--------|---------------|
|
|
||||||
| CVE-2026-29063 | immutable | HIGH | 9.8 | OVERDUE | 5.1.5 |
|
|
||||||
| CVE-2025-58754 | axios | HIGH | 8.2 | OVERDUE | 1.12.0 |
|
|
||||||
| CVE-2026-32460 | langsmith | HIGH | 7.1 | Due Jun 12 | 0.6.0 |
|
|
||||||
|
|
||||||
## Vulnerability Details
|
|
||||||
|
|
||||||
### 1. CVE-2026-29063: Prototype Pollution in immutable
|
|
||||||
|
|
||||||
**Location:** Transitive dependency in `openmemory/ui`
|
|
||||||
**Current Version:** 5.1.1
|
|
||||||
**Required Version:** >= 5.1.5
|
|
||||||
|
|
||||||
**Impact:**
|
|
||||||
- Prototype pollution via `mergeDeep()`, `mergeDeepWith()`, `merge()`, `Map.toJS()`, `Map.toObject()`
|
|
||||||
- Privilege escalation through `__proto__` injection
|
|
||||||
- Security check bypass
|
|
||||||
|
|
||||||
**Remediation:**
|
|
||||||
Since immutable is a transitive dependency, investigate the dependency tree and either:
|
|
||||||
1. Update the direct dependency that requires immutable
|
|
||||||
2. Use package manager overrides/resolutions:
|
|
||||||
|
|
||||||
```json
|
|
||||||
// pnpm-lock.yaml or package.json
|
|
||||||
"pnpm": {
|
|
||||||
"overrides": {
|
|
||||||
"immutable": ">=5.1.5"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
**References:**
|
|
||||||
- Issue: #5318
|
|
||||||
- Dependabot: https://github.com/mem0ai/mem0/security/dependabot/566
|
|
||||||
- Advisory: https://github.com/immutable-js/immutable-js/security/advisories/GHSA-wf6x-7x77-mvgw
|
|
||||||
|
|
||||||
### 2. CVE-2025-58754: Axios DoS via data: URI
|
|
||||||
|
|
||||||
**Location:** Multiple locations (already fixed in most)
|
|
||||||
**Current Versions:** 1.15.2, 1.7.7 (SAFE)
|
|
||||||
**Required Version:** >= 1.12.0
|
|
||||||
|
|
||||||
**Status:** ✅ RESOLVED - All axios instances are already at safe versions
|
|
||||||
|
|
||||||
**Impact:**
|
|
||||||
- Denial of Service through unbounded memory allocation
|
|
||||||
- Process crash via malicious `data:` URIs
|
|
||||||
- Bypasses `maxContentLength` / `maxBodyLength` limits
|
|
||||||
|
|
||||||
**Verification:**
|
|
||||||
```bash
|
|
||||||
grep -r "axios" --include="package.json" | grep version
|
|
||||||
# All instances show >= 1.12.0
|
|
||||||
```
|
|
||||||
|
|
||||||
**References:**
|
|
||||||
- Issue: #5319
|
|
||||||
- Dependabot: https://github.com/mem0ai/mem0/security/dependabot/567
|
|
||||||
|
|
||||||
### 3. CVE-2026-32460: LangSmith SSRF & Credential Disclosure
|
|
||||||
|
|
||||||
**Location:** Transitive dependency in `openclaw` and `mem0-ts`
|
|
||||||
**Current Versions:** 0.3.87, 0.5.10
|
|
||||||
**Required Version:** >= 0.6.0
|
|
||||||
|
|
||||||
**Impact:**
|
|
||||||
- Server-Side Request Forgery (SSRF) via untrusted prompts
|
|
||||||
- Credential disclosure when pulling public prompts
|
|
||||||
- Prompt injection and behavior manipulation
|
|
||||||
|
|
||||||
**Remediation:**
|
|
||||||
Since langsmith is a transitive dependency (likely from @langchain packages), investigate and either:
|
|
||||||
1. Update the parent dependency (@langchain/core, etc.)
|
|
||||||
2. Use package manager overrides:
|
|
||||||
|
|
||||||
```json
|
|
||||||
// pnpm-lock.yaml or package.json
|
|
||||||
"pnpm": {
|
|
||||||
"overrides": {
|
|
||||||
"langsmith": ">=0.6.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
**Post-Upgrade Security Guidance:**
|
|
||||||
After upgrading, pulling public prompts requires explicit opt-in:
|
|
||||||
- Python: `dangerously_pull_public_prompt=True`
|
|
||||||
- JS/TS: `dangerouslyPullPublicPrompt: true`
|
|
||||||
|
|
||||||
**References:**
|
|
||||||
- Issue: #5320
|
|
||||||
- Dependabot: https://github.com/mem0ai/mem0/security/dependabot/920
|
|
||||||
- Advisory: https://github.com/langchain-ai/langsmith-sdk/security/advisories/GHSA-3644-q5cj-c5c7
|
|
||||||
|
|
||||||
## Recommended Actions
|
|
||||||
|
|
||||||
### Immediate (High Priority - Overdue)
|
|
||||||
1. ✅ **CVE-2025-58754 (axios):** Already resolved - verify in production
|
|
||||||
2. 🔴 **CVE-2026-29063 (immutable):** Add override to `openmemory/ui/package.json`
|
|
||||||
3. 🔴 **CVE-2026-32460 (langsmith):** Add overrides to `openclaw/package.json` and `mem0-ts/package.json`
|
|
||||||
|
|
||||||
### Testing Checklist
|
|
||||||
- [ ] Run `pnpm install` in affected directories
|
|
||||||
- [ ] Verify lock files show updated versions
|
|
||||||
- [ ] Run existing test suites
|
|
||||||
- [ ] Check for runtime errors related to dependency changes
|
|
||||||
- [ ] Verify Dependabot alerts are resolved
|
|
||||||
|
|
||||||
### Deployment Verification
|
|
||||||
```bash
|
|
||||||
# After deployment, verify versions:
|
|
||||||
cd openmemory/ui && pnpm list immutable
|
|
||||||
cd openclaw && pnpm list langsmith
|
|
||||||
cd mem0-ts && pnpm list langsmith
|
|
||||||
```
|
|
||||||
|
|
||||||
## Implementation Plan
|
|
||||||
|
|
||||||
1. **Add Dependency Overrides**
|
|
||||||
- Update `openmemory/ui/package.json` with immutable override
|
|
||||||
- Update `openclaw/package.json` with langsmith override
|
|
||||||
- Update `mem0-ts/package.json` with langsmith override
|
|
||||||
|
|
||||||
2. **Regenerate Lock Files**
|
|
||||||
```bash
|
|
||||||
cd openmemory/ui && pnpm install
|
|
||||||
cd openclaw && pnpm install
|
|
||||||
cd mem0-ts && pnpm install
|
|
||||||
```
|
|
||||||
|
|
||||||
3. **Test & Verify**
|
|
||||||
- Run test suites for each affected package
|
|
||||||
- Verify no breaking changes
|
|
||||||
- Check Vanta dashboard for resolution
|
|
||||||
|
|
||||||
4. **Deploy & Monitor**
|
|
||||||
- Deploy to staging first
|
|
||||||
- Monitor for any runtime issues
|
|
||||||
- Deploy to production
|
|
||||||
- Confirm Dependabot alerts close
|
|
||||||
|
|
||||||
## Contact
|
|
||||||
|
|
||||||
For questions or concerns about this advisory:
|
|
||||||
- Security Issues: #5318, #5319, #5320
|
|
||||||
- Vanta Dashboard: Check GitHub Dependabot integration
|
|
||||||
- Automated by: Vulnerability Remediation Workflow
|
|
||||||
|
|
||||||
---
|
|
||||||
*Generated: 2026-05-30*
|
|
||||||
*Workflow: Automated Vulnerability Remediation*
|
|
||||||
@@ -40,7 +40,8 @@
|
|||||||
"typescript": "^5.4.0",
|
"typescript": "^5.4.0",
|
||||||
"tsup": "^8.0.0",
|
"tsup": "^8.0.0",
|
||||||
"tsx": "^4.7.0",
|
"tsx": "^4.7.0",
|
||||||
"vitest": "^1.5.0",
|
"vite": "^6.0.0",
|
||||||
|
"vitest": "^4.1.0",
|
||||||
"@biomejs/biome": "^1.7.0",
|
"@biomejs/biome": "^1.7.0",
|
||||||
"@types/node": "^20.0.0"
|
"@types/node": "^20.0.0"
|
||||||
}
|
}
|
||||||
|
|||||||
Generated
+341
-477
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user