786624 matches found
praisonaiagents: ast_grep_rewrite rewrites arbitrary files without the @require_approval gate enforced on every sibling mutation tool
Target: PraisonAI MervinPraison/PraisonAIAffected component: praisonaiagents/tools/astgreptool.py — astgreprewriteAffected versions: master at ce97667156a116c50b4a3d1aa21e09f048903fda; reproduced against the current praisonaiagents PyPI release praisonaiagents = 1.6.52. SummaryTools in...
PYSEC-2026-3904 praisonaiagents vulnerable to SSRF in web_crawl tool via redirect-following and DNS rebinding (validate-then-fetch gap)
The webcrawl tool performs its SSRF check only on the initial URL: it resolves the hostname once with socket.gethostbyname and rejects private/loopback/link-local results. It then passes the URL to a fetcher that uses httpx.Clientfollowredirects=True - or urllib.request.urlopen when httpx is...
PYSEC-2026-3901 praisonaiagents: ast_grep_rewrite rewrites arbitrary files without the @require_approval gate enforced on every sibling mutation tool
Target: PraisonAI MervinPraison/PraisonAI Affected component: praisonaiagents/tools/astgreptool.py — astgreprewrite Affected versions: master at ce97667156a116c50b4a3d1aa21e09f048903fda; reproduced against the current praisonaiagents PyPI release praisonaiagents --rewrite --lang --update-all line...
PraisonAI has an origin validation bypass in MCP HTTP Stream transport that allows browser-mediated unauthenticated tool execution on local MCP server
SummaryPraisonAI's MCP HTTP Stream transport uses an unsafe prefix match when validating the Origin header. The default localhost allowlist includes origins such as http://localhost, and the validation accepts any origin that starts with an allowed value.As a result, an attacker-controlled origin...
PYSEC-2026-3867 NLTK AllowlistUnpickler dotted-name validation bypass allows remote code execution
NLTK before 3.10.3 contains a remote code execution vulnerability in AllowlistUnpickler that validates only the pickle module string and not the global name, allowing attackers to resolve dotted names by attribute traversal to callables outside the allowlisted namespace. Attackers can craft...
PYSEC-2026-3896 PraisonAI has an origin validation bypass in MCP HTTP Stream transport that allows browser-mediated unauthenticated tool execution on local MCP server
Summary PraisonAI's MCP HTTP Stream transport uses an unsafe prefix match when validating the Origin header. The default localhost allowlist includes origins such as http://localhost, and the validation accepts any origin that starts with an allowed value. As a result, an attacker-controlled orig...
NLTK AllowlistUnpickler dotted-name validation bypass allows remote code execution
NLTK before 3.10.3 contains a remote code execution vulnerability in AllowlistUnpickler that validates only the pickle module string and not the global name, allowing attackers to resolve dotted names by attribute traversal to callables outside the allowlisted namespace. Attackers can craft...
Xinference vulnerable to remote code execution via unsafe `eval()` in Llama3 tool-call parsing
SummaryXinference used Python's unsafe eval function when parsing Llama3 tool-call output generated by a large language model. Because the model output can be influenced by attacker-controlled prompts sent to the chat completion API, a remote attacker can craft prompts that cause the model to...
asteval has a Sandbox Escape via BaseException Subclasses
SummaryAn attacker who can supply expressions to asteval.Interpreter.eval can raise SystemExit,KeyboardInterrupt, GeneratorExit, or BaseException from inside the sandbox. Theseexceptions are subclasses of BaseException but not Exception, so they bypass theexcept Exception: safety net in both run...
LangChain MongoDB has NoSQL Operator Injection in MongoDBSaver.list() leading to cross-tenant data exposure
Executive SummaryA NoSQL injection issue exists in the langgraph-checkpoint-mongodb andlanggraph-store-mongodb libraries. MongoDBSaver.list and MongoDBStore.search methodsaccept a filter parameter that is incorporated into MongoDB queries without sufficient validation.Because MongoDB query operat...
PYSEC-2026-3859 LangChain MongoDB has NoSQL Operator Injection in MongoDBSaver.list() leading to cross-tenant data exposure
Executive Summary A NoSQL injection issue exists in the langgraph-checkpoint-mongodb and langgraph-store-mongodb libraries. MongoDBSaver.list and MongoDBStore.search methods accept a filter parameter that is incorporated into MongoDB queries without sufficient validation. Because MongoDB query...
PYSEC-2026-3946 Xinference vulnerable to remote code execution via unsafe `eval()` in Llama3 tool-call parsing
Summary Xinference used Python's unsafe eval function when parsing Llama3 tool-call output generated by a large language model. Because the model output can be influenced by attacker-controlled prompts sent to the chat completion API, a remote attacker can craft prompts that cause the model to...
LangChain MongoDB has NoSQL Operator Injection in MongoDBSaver.list() leading to cross-tenant data exposure
Executive SummaryA NoSQL injection issue exists in the langgraph-checkpoint-mongodb andlanggraph-store-mongodb libraries. MongoDBSaver.list and MongoDBStore.search methodsaccept a filter parameter that is incorporated into MongoDB queries without sufficient validation.Because MongoDB query operat...
PYSEC-2026-3860 LangChain MongoDB has NoSQL Operator Injection in MongoDBSaver.list() leading to cross-tenant data exposure
Executive Summary A NoSQL injection issue exists in the langgraph-checkpoint-mongodb and langgraph-store-mongodb libraries. MongoDBSaver.list and MongoDBStore.search methods accept a filter parameter that is incorporated into MongoDB queries without sufficient validation. Because MongoDB query...
django CMS: Stored XSS in edit-mode plugin exception rendering
SummaryWhen plugin rendering fails in edit mode, django CMS renders a cms-rendering-exception block so editors can see that a placeholder could not be rendered. Older code built that block's heading by interpolating the exception message, placeholder/source strings, and the failing plugin's short...
PYSEC-2026-3825 django CMS: Stored XSS in edit-mode plugin exception rendering
Summary When plugin rendering fails in edit mode, django CMS renders a cms-rendering-exception block so editors can see that a placeholder could not be rendered. Older code built that block's heading by interpolating the exception message, placeholder/source strings, and the failing plugin's shor...
PYSEC-2026-3807 asteval has a Sandbox Escape via BaseException Subclasses
Summary An attacker who can supply expressions to asteval.Interpreter.eval can raise SystemExit, KeyboardInterrupt, GeneratorExit, or BaseException from inside the sandbox. These exceptions are subclasses of BaseException but not Exception, so they bypass the except Exception: safety net in both...
Copier has a trust-prefix bypass via path traversal that runs tasks unprompted
Copier: trust-prefix bypass via path traversal runs tasks unprompted SummaryIn copier = 9.5.0,...
PYSEC-2026-3818 Copier has a trust-prefix bypass via path traversal that runs tasks unprompted
Copier: trust-prefix bypass via path traversal runs tasks unprompted Summary In copier = 9.5.0, = 9.15.1, the trust setting's prefix match copier/settings.py compares the template URL against a trusted prefix with a raw str.startswith and no path normalization, while the URL is normalized when th...
PYSEC-2026-3842 GitPython: Environment-variable exfiltration via os.path.expandvars() on Repo.clone_from() URL
Summary Repo.clonefrom passes the caller-supplied remote URL through Git.polishurl, which on every non-Cygwin platform calls os.path.expandvars on the URL before handing it to git clone. An attacker who controls the URL argument — the documented use case for clonefrom in "import repository from...