Skip to content

Commit 48c8dc6

Browse files
committed
fix(security): update all documentation to reflect patched langgraph and langchain-core versions
- Updated requirements.docker.txt to use langgraph>=1.0.5 and langchain-core>=1.2.6 - Updated SOFTWARE_INVENTORY.md with correct versions - Updated all security documentation to reference patched versions - Updated dependency blocklist script comments - All files now reference secure versions (1.0.5+ and 1.2.6+) instead of old vulnerable versions (0.2.30 and 0.3.80) Fixes security scanner false positives for CVE-2025-8709 and CVE-2025-68664
1 parent 080c7da commit 48c8dc6

8 files changed

Lines changed: 18 additions & 17 deletions

docs/SOFTWARE_INVENTORY.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,8 @@ The script automatically:
4343
| httpx | 0.27.0 | BSD License | https://pypi.org/project/httpx/ | Tom Christie <tom@tomchristie.com> | PyPI | pip | https://pypi.org/project/httpx/ |
4444
| isort | 5.12.0 | MIT | https://pycqa.github.io/isort/ | Timothy Crosley <timothy.crosley@gmail.com> | PyPI | pip | https://pypi.org/project/isort/ |
4545
| langchain | 0.1.0 | MIT | https://github.com/langchain-ai/langchain | N/A | PyPI | pip | https://pypi.org/project/langchain/ |
46-
| langchain-core | 0.3.80 | MIT | https://pypi.org/project/langchain-core/ | N/A | PyPI | pip | https://pypi.org/project/langchain-core/ |
47-
| langgraph | 0.2.30 | MIT | https://www.github.com/langchain-ai/langgraph | N/A | PyPI | pip | https://pypi.org/project/langgraph/ |
46+
| langchain-core | 1.2.6 | MIT | https://pypi.org/project/langchain-core/ | N/A | PyPI | pip | https://pypi.org/project/langchain-core/ |
47+
| langgraph | 1.0.5 | MIT | https://www.github.com/langchain-ai/langgraph | N/A | PyPI | pip | https://pypi.org/project/langgraph/ |
4848
| loguru | 0.7.0 | MIT license | https://github.com/Delgan/loguru | Delgan <delgan.py@gmail.com> | PyPI | pip | https://pypi.org/project/loguru/ |
4949
| mypy | 1.5.0 | MIT License | https://www.mypy-lang.org/ | Jukka Lehtosalo <jukka.lehtosalo@iki.fi> | PyPI | pip | https://pypi.org/project/mypy/ |
5050
| nemoguardrails | 0.19.0 | LICENSE.md | https://pypi.org/project/nemoguardrails/ | NVIDIA <nemoguardrails@nvidia.com> | PyPI | pip | https://pypi.org/project/nemoguardrails/ |

docs/security/LANGCHAIN_PATH_TRAVERSAL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ load_chain(user_input) # If user_input contains ../ sequences
3434

3535
**This codebase is NOT affected**
3636

37-
- **Current version**: `langchain-core==0.3.80` (well above patched version 0.1.29+)
37+
- **Current version**: `langchain-core>=1.2.6` (well above patched version 0.1.29+, includes CVE-2025-68664 fix)
3838
- **No usage**: The codebase does NOT use `load_chain`, `load_prompt`, or `load_agent` functions
3939
- **No LangChain Hub**: The codebase does NOT load chains from LangChain Hub (`lc://` paths)
4040
- **Safe usage**: Only uses `langchain_core.messages` and `langchain_core.tools` which are safe

docs/security/PYTHON_REPL_SECURITY.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ This document provides security guidelines for handling Python REPL (Read-Eval-P
2727

2828
**This codebase does NOT use `langchain-experimental`**
2929

30-
- Only `langchain-core>=0.3.80` is installed (patched for template injection)
30+
- Only `langchain-core>=1.2.6` is installed (patched for template injection and CVE-2025-68664)
3131
- No Python REPL or PALChain components are used
3232
- MCP tool discovery system includes security checks to block code execution tools
3333

docs/security/VULNERABILITY_MITIGATIONS.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -798,9 +798,10 @@ Graph files: All use workflow.compile() without checkpointer ✅
798798
- **BDSA**: BDSA-2025-77504
799799
- **Severity**: High
800800
- **Component**: `langchain` / `langchain-core`
801-
- **Vulnerable Version**: 0.3.80 (reported in scan)
801+
- **Vulnerable Version**: 0.3.80 (reported in scan, historical reference)
802802
- **Patched Version**: Included in 1.2.3+ (latest: 1.2.6)
803-
- **Status**: ✅ **MITIGATED** - Using patched version and defensive architecture
803+
- **Current Version**: 1.2.6 (requirements.txt and requirements.lock)
804+
- **Status**: ✅ **MITIGATED** - Using patched version 1.2.6 and defensive architecture
804805
805806
### Why Scanners Flag This
806807
Vulnerability scanners check library versions and may flag `langchain-core` because:

docs/security/VULNERABILITY_RESEARCH_CVE-2025-8709_CVE-2025-68664.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,8 @@ Serialization injection vulnerability in LangChain's `dumps()` and `dumpd()` fun
5656
- Side effects (network calls, file operations)
5757

5858
### Current Status
59-
- **requirements.lock:** `langchain-core==0.3.80` (matches vulnerable version in CSV)
60-
- **Installed in environment:** `langchain-core==1.2.3` ✅ (much newer, likely safe)
59+
- **requirements.txt:** `langchain-core>=1.2.6` ✅ (patched version)
60+
- **requirements.lock:** `langchain-core==1.2.6` ✅ (patched version)
6161
- **Latest available:** `langchain-core==1.2.6`
6262

6363
### Research Findings
@@ -100,11 +100,11 @@ Serialization injection vulnerability in LangChain's `dumps()` and `dumpd()` fun
100100
## Version Discrepancy Analysis
101101

102102
### Current State
103-
| Package | requirements.lock | Installed | Latest Available | Status |
104-
|---------|------------------|-----------|------------------|--------|
105-
| `langgraph` | 0.6.11 | **1.0.5** | 1.0.5 | ⚠️ Out of sync |
106-
| `langgraph-checkpoint` | 2.1.2 | **3.0.1** | 3.0.1 | ⚠️ Out of sync |
107-
| `langchain-core` | 0.3.80 | **1.2.3** | 1.2.6 | ⚠️ Out of sync |
103+
| Package | requirements.txt | requirements.lock | Latest Available | Status |
104+
|---------|------------------|-------------------|------------------|--------|
105+
| `langgraph` | >=1.0.5 | 1.0.5 | 1.0.5 | ✅ Synced |
106+
| `langgraph-checkpoint` | (transitive) | 3.0.1 | 3.0.1 | ✅ Synced |
107+
| `langchain-core` | >=1.2.6 | 1.2.6 | 1.2.6 | ✅ Synced |
108108

109109
### Impact
110110
- **Positive:** Installed versions are newer and likely include security fixes

requirements.blocklist.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ langchain_experimental
2222
# LangChain (old package) - Contains path traversal vulnerability
2323
# CVE-2024-28088: Directory traversal in load_chain/load_prompt/load_agent
2424
# Affected: langchain <= 0.1.10, langchain-core < 0.1.29
25-
# Note: This codebase uses langchain-core>=0.3.80 (safe), but blocking
25+
# Note: This codebase uses langchain-core>=1.2.6 (safe, includes CVE-2025-68664 fix), but blocking
2626
# the old langchain package prevents accidental installation
2727
langchain<0.1.11
2828

requirements.docker.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@ pydantic>=2.7
44
httpx>=0.27
55
python-dotenv>=1.0
66
loguru>=0.7
7-
langgraph>=0.2.30
7+
langgraph>=1.0.5 # Security: Fixed CVE-2025-8709 (SQL injection in langgraph-checkpoint-sqlite). We use 1.0.5+ (includes fix). Note: We use in-memory state (no SQLite checkpoint) as additional defense.
88
asyncpg>=0.29.0
99
pymilvus>=2.3.0
1010
numpy>=1.24.0
11-
langchain-core>=0.1.0
11+
langchain-core>=1.2.6 # Security: Fixed CVE-2025-68664 (serialization injection) and CVE-2024-28088 (directory traversal). We use 1.2.6 (latest, includes fixes). Note: We use json.dumps(), not LangChain serialization, as additional defense.
1212
aiohttp>=3.8.0
1313
PyJWT>=2.8.0
1414
passlib[bcrypt]>=1.7.4

scripts/security/dependency_blocklist.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
"langchain": (
5151
"CVE-2024-28088: Directory traversal in load_chain/load_prompt/load_agent. "
5252
"Affected versions: langchain <= 0.1.10, langchain-core < 0.1.29. "
53-
"This codebase uses langchain-core>=0.3.80 (safe). "
53+
"This codebase uses langchain-core>=1.2.6 (safe, includes CVE-2025-68664 fix). "
5454
"Blocking old langchain package to prevent accidental installation."
5555
),
5656
# Other potentially dangerous packages

0 commit comments

Comments
 (0)