{"uuid": "bb6a145f-e900-4891-bf5a-f05bca9f39f7", "vulnerability_lookup_origin": "1a89b78e-f703-45f3-bb86-59eb712668bd", "author": "9f56dd64-161d-43a6-b9c3-555944290a09", "vulnerability": "CVE-2026-62388", "type": "seen", "source": "https://gist.github.com/alon710/c7b1744220c73bf5f0357a6534139cbd", "content": "# CVE-2026-62388: CVE-2026-62388: Insecure Default Security Enforcement in Natural Language Toolkit (NLTK) Path Security Module\n\n&gt; **CVSS Score:** 7.5\n&gt; **Published:** 2026-09-02\n&gt; **Full Report:** https://cvereports.com/reports/CVE-2026-62388\n\n## Summary\nCVE-2026-62388 represents a critical design flaw in the Natural Language Toolkit (NLTK) before version 3.10.0. The central security module (`nltk/pathsec.py`) initialized its validation enforcement flag to false by default. This fail-open configuration rendered security controls\u2014such as path traversal checks, zip archive audits, and SSRF validations\u2014non-blocking, only emitting warnings while permitting arbitrary file operations and code execution.\n\n## TL;DR\nNLTK versions prior to 3.10.0 initialized path security in an inactive 'fail-open' state by default, allowing attackers to bypass path traversal, SSRF, and zip-extraction protections.\n\n## Exploit Status: POC\n\n## Technical Details\n\n- **CWE ID**: CWE-1188\n- **Attack Vector**: Network\n- **CVSS v3.1 Score**: 7.5 (High)\n- **CVSS v4.0 Score**: 8.7 (High)\n- **EPSS Score**: 0.00457\n- **Exploit Status**: PoC / Structural Bypass documented\n- **KEV Status**: Not Listed\n\n## Affected Systems\n\n- Natural Language Toolkit (NLTK)\n- **NLTK**: &lt; 3.10.0 (Fixed in: `3.10.0`)\n\n## Mitigation\n\n- Upgrade NLTK to version 3.10.0 or later.\n- Programmatically override the enforcement state via nltk.pathsec.ENFORCE = True in application entrypoints.\n- Implement network-level egress filtering to prevent SSRF vulnerabilities resulting from resource retrieval.\n- Configure Python's warning filters to raise errors on RuntimeWarnings triggered by NLTK's security validations.\n\n**Remediation Steps:**\n1. Identify all active deployments using NLTK versions prior to 3.10.0.\n2. Execute 'pip install --upgrade nltk&gt;=3.10.0' to obtain the patched release.\n3. Verify the fix by checking that 'nltk.pathsec.ENFORCE' evaluates to True under default initialization.\n4. For systems where upgrading is deferred, inject a configuration script at bootstrap: 'import nltk.pathsec; nltk.pathsec.ENFORCE = True'.\n\n## References\n\n- [GitHub Security Advisory GHSA-p3m8-78j2-g5p3](https://github.com/nltk/nltk/security/advisories/GHSA-p3m8-78j2-g5p3)\n- [VulnCheck Security Advisory](https://www.vulncheck.com/advisories/nltk-before-insecure-default-configuration-pathsec)\n- [NLTK Fix Commit](https://github.com/nltk/nltk/commit/155e40343cff0bf50d233e274a12e04d1428b1d9)\n- [NLTK Pull Request #3593](https://github.com/nltk/nltk/pull/3593)\n- [NLTK Release v3.10.0](https://github.com/nltk/nltk/releases/tag/v3.10.0)\n\n\n---\n*Generated by [CVEReports](https://cvereports.com/reports/CVE-2026-62388) - Automated Vulnerability Intelligence*", "creation_timestamp": "2026-09-02T20:32:56.832446Z"}