{"description":"Trending threats, MITRE ATT\u0026CK coverage, and detection metadata. Fed continuously.","favicon":"https://feed.craftedsignal.io/favicon-32x32.png","feed_url":"https://feed.craftedsignal.io/products/nltk-3.10.0/feed.json","home_page_url":"https://feed.craftedsignal.io/","icon":"https://feed.craftedsignal.io/apple-touch-icon.png","items":[{"_cs_actors":[],"_cs_cpes":[],"_cs_cves":[{"cvss":8.8,"id":"CVE-2026-71513"}],"_cs_exploited":false,"_cs_has_poc":false,"_cs_poc_references":[],"_cs_products":["nltk","NLTK (3.10.0)"],"_cs_severities":["high"],"_cs_tags":[],"_cs_type":"advisory","_cs_vendors":["NLTK"],"content_html":"\u003cp\u003eNLTK (Natural Language Toolkit) versions before 3.10.3 contain a remote code execution vulnerability in the AllowlistUnpickler component. The vulnerability, tracked as CVE-2026-71513, stems from insufficient validation logic; while the component validates the pickle module string, it fails to validate the global name. This oversight allows an attacker to resolve dotted names via attribute traversal, successfully bypassing the allowlist.\u003c/p\u003e\n\u003cp\u003eBy crafting and providing a malicious transition-parser model, an attacker can trigger arbitrary command execution when the \u003ccode\u003eTransitionParser.parse\u003c/code\u003e method invokes \u003ccode\u003eallowlisted_pickle_load\u003c/code\u003e. Because this involves the deserialization of untrusted data (CWE-502), any application utilizing NLTK to load untrusted transition-parser models is at risk. Defenders should prioritize updating NLTK to version 3.10.3 or later to remediate the flaw in the underlying pickle security logic.\u003c/p\u003e\n\u003ch2 id=\"attack-chain\"\u003eAttack Chain\u003c/h2\u003e\n\u003col\u003e\n\u003cli\u003eAttacker generates a malicious transition-parser model file using crafted pickle payloads.\u003c/li\u003e\n\u003cli\u003eAttacker leverages attribute traversal to reference callables outside the intended allowlisted namespace.\u003c/li\u003e\n\u003cli\u003eAttacker delivers the malicious model to a target application that uses the NLTK library.\u003c/li\u003e\n\u003cli\u003eTarget application invokes the \u003ccode\u003eTransitionParser.parse\u003c/code\u003e function, which subsequently calls \u003ccode\u003eallowlisted_pickle_load\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003eAllowlistUnpickler\u003c/code\u003e fails to perform validation on the global name during deserialization.\u003c/li\u003e\n\u003cli\u003eThe pickle loader executes the attacker-supplied malicious callable.\u003c/li\u003e\n\u003cli\u003eArbitrary code executes within the context of the application process, leading to full system compromise or exfiltration.\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch2 id=\"impact\"\u003eImpact\u003c/h2\u003e\n\u003cp\u003eSuccessful exploitation allows for remote code execution, which can lead to complete compromise of the affected application environment. Given the widespread use of NLTK in data science and NLP pipelines, this vulnerability could impact numerous downstream services and automated systems that process user-provided model files. The CVSS 3.1 base score of 8.8 indicates a high severity rating with potential for full confidentiality, integrity, and availability impact.\u003c/p\u003e\n\u003ch2 id=\"recommendation\"\u003eRecommendation\u003c/h2\u003e\n\u003cp\u003ePrioritized actions for security and engineering teams:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade NLTK to version 3.10.3 or later across all environments where natural language processing tasks are performed.\u003c/li\u003e\n\u003cli\u003eAudit existing infrastructure to identify applications that load externally provided transition-parser models.\u003c/li\u003e\n\u003cli\u003eImplement strict input validation and sandboxing for any component that processes serialized Python objects or untrusted model files.\u003c/li\u003e\n\u003cli\u003eMonitor application logs for unexpected process spawns or network connections originating from Python environments using NLTK.\u003c/li\u003e\n\u003c/ul\u003e\n","date_modified":"2026-08-22T15:31:19Z","date_published":"2026-08-22T15:31:03Z","id":"https://feed.craftedsignal.io/briefs/2026-08-nltk-rce/","summary":"NLTK versions prior to 3.10.3 are vulnerable to remote code execution due to improper validation of dotted names during the unpickling of transition-parser models.","title":"Remote Code Execution in NLTK AllowlistUnpickler","url":"https://feed.craftedsignal.io/briefs/2026-08-nltk-rce/"}],"language":"en","title":"CraftedSignal Threat Feed - NLTK (3.10.0)","version":"https://jsonfeed.org/version/1.1"}