Lucene search
+L
Osv PysecRecent

7962 matches found

osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•21 views

PYSEC-2026-3914 qwed Vulnerable to Authenticated Remote Code Execution via Unsafe SymPy `parse_expr()`

Summary The qwed package version 5.1.1 passes attacker-controlled input directly to SymPy's parseexpr function without a restricted namespace. Because parseexpr internally calls Python's eval, any authenticated tenant can execute arbitrary Python code inside the API server process. The attack...

8.8CVSS6.2AI score0.00775EPSS
SaveExploits0References8
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•22 views

PYSEC-2026-3832 eml_parser vulnerable to DoS via deeply nested parens in Received headers

Summary emlparser strips parenthesised CFWS comments from Received: headers using a regex-based fix-point loop. The loop has quadratic time complexity in the number of nested parens. A single Received: header containing 5,000 nested parens causes 1.3 seconds of CPU saturation per parsed message;...

7.5CVSS5.7AI score0.0063EPSS
SaveExploits0References8
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•14 views

PYSEC-2026-3902 praisonaiagents vulnerable to arbitrary file write via unsanitized `user_id` in `FileMemory.__init__()` — path traversal to any writable location

Summary praisonaiagents/memory/filememory.py::FileMemory.init constructs all memory file paths by directly joining the userid parameter to a base path: python self.userpath = self.basepath / userid LINE 145 — no sanitization No validation or normalization is applied to userid before the path join...

7.1CVSS6.1AI score0.00484EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•19 views

PYSEC-2026-3889 PraisonAI: Authentication fail-open in Recipe server allows unauthenticated access when API key or JWT auth is configured without a secret

Summary The PraisonAI Recipe HTTP server silently allows unauthenticated requests when auth is configured as api-key or jwt but the corresponding secret is missing. This creates an authentication fail-open condition. An operator can start the Recipe server with authentication enabled, including o...

8.2CVSS6.1AI score0.00486EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•19 views

PYSEC-2026-3886 PraisonAI has a Browser Server WebSocket origin validation bypass via unanchored regex (patch bypass of CVE-2026-40289 / GHSA-8x8f-54wf-vv92)

Summary praisonai/browser/server.py validates incoming WebSocket connections using a Chrome extension Origin check. The regex chrome-extension://a-z0-932 is applied with re.match, which only anchors at the start of the string, not the end. Any Origin header with more than 32 alphanumeric characte...

9.1CVSS6.6AI score0.00521EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•20 views

PYSEC-2026-3915 qwed-mcp has Unsafe SymPy `parse_expr()` Remote Code Execution via Unsanitized Math Expression Input

Summary verifymathexpression in qwed-mcp v0.2.0 passes attacker-controlled strings directly to SymPy's parseexpr without restricting globaldict or validating the expression's AST. Because parseexpr internally calls eval and Python automatically injects the current module's builtins when no explic...

9.8CVSS6.7AI score0.00726EPSS
SaveExploits0References8
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•17 views

PYSEC-2026-3931 utcp-gql SSRF: CVE-2026-44661 fix not applied to the GraphQL and WebSocket plugins

Summary The fix for CVE-2026-44661 commit 5b16e43 added the ensuresecureurl / issecureurl helpers and wired them into the three HTTP-family plugins, but it did not reach the GraphQL or WebSocket plugins. The GraphQL plugin utcp-gql still uses the startswith prefix check that the fix explicitly...

4.7CVSS6.5AI score0.00228EPSS
SaveExploits0References11
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•18 views

PYSEC-2026-3932 utcp-gql SSRF: CVE-2026-44661 fix not applied to the GraphQL and WebSocket plugins

Summary The fix for CVE-2026-44661 commit 5b16e43 added the ensuresecureurl / issecureurl helpers and wired them into the three HTTP-family plugins, but it did not reach the GraphQL or WebSocket plugins. The GraphQL plugin utcp-gql still uses the startswith prefix check that the fix explicitly...

4.7CVSS6.5AI score0.00228EPSS
SaveExploits0References11
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•16 views

PYSEC-2026-3892 PraisonAI: Origin-validation bypass (startswith prefix match) enables unauthenticated cross-site request forgery against the PraisonAI MCP HTTP server

Summary The PraisonAI MCP server exposes an HTTP-stream transport praisonai mcp serve --transport http-stream that binds to localhost and, by default, has no API key. Its only access control for browser-originated requests is an Origin allowlist, which the code implements as required by the MCP...

7.6CVSS5.8AI score0.00197EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•25 views

PYSEC-2026-3885 PraisonAI: [Auth Bypass] PraisonAI async Jobs API (`/api/v1/runs`) has no authentication — unauthenticated job execution, result theft, cancel and delete

Summary PraisonAI's async Jobs API the FastAPI service in praisonai/jobs/ installs its router with no authentication middleware, no router-level dependency, and no per-route auth check. Any caller who can reach the jobs server can submit agent jobs executed against the operator's configured LLM...

8.6CVSS6.2AI score0.00568EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•16 views

PYSEC-2026-3897 PraisonAI MCP HTTP server has unauthenticated unbounded session accumulation (memory exhaustion; session TTL never enforced)

Summary The PraisonAI MCP HTTP-stream server creates a new in-memory session on every initialize request and never removes it. The cleanup routine that would expire sessions cleanupsessions is defined but never called anywhere in the codebase, and the configured session TTL is never enforced. The...

6.5CVSS6AI score0.00452EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•16 views

PYSEC-2026-3887 PraisonAI serve agents --api-key is ignored, allowing unauthenticated remote agent execution

Summary PraisonAI's praisonai serve agents command exposes --api-key as the documented authentication control for production/external deployments, but the configured key is not enforced on the public agent invocation compatibility endpoints. An operator can start the server with --api-key and bin...

8.6CVSS6.2AI score0.00453EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•20 views

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...

6.1CVSS6.3AI score0.00166EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•13 views

PYSEC-2026-3899 praisonaiagents: AgentServer declares auth_token but never enforces it on any route

Researcher: Kai Aizen — SnailSploit @SnailSploit, Adversarial & Offensive Security Research Target: https://github.com/MervinPraison/PraisonAI --- Package: praisonaiagents on PyPI Affected version empirically tested: 1.6.48 Component: praisonaiagents.server.AgentServer the bundled HTTP / SSE serv...

8.2CVSS6.1AI score0.00486EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•19 views

PYSEC-2026-3893 PraisonAI: `--api-key` flag on `praisonai serve` is not properly enforced

Summary praisonai serve agents and praisonai serve unified both accept --api-key for authentication. The flag is parsed but never wired into the FastAPI app — no middleware, no header check, nothing. The server runs wide open regardless of what key you set. Tested on 4.6.50 from PyPI. Affected...

8.8CVSS6AI score0.0048EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•20 views

PYSEC-2026-3905 praisonaiagents has an SSRF protection bypass in `spider_tools._host_is_blocked()` via DNS-resolved hostnames (`127.0.0.1.nip.io`)

Summary praisonaiagents/tools/spidertools.py contains an SSRF protection bypass. The function hostisblocked validates URLs against a list of blocked IP literals and hostname aliases, but never performs DNS resolution. Any hostname that resolves to a private or loopback IP address — including publ...

8.5CVSS5.8AI score0.00357EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•20 views

PYSEC-2026-3895 PraisonAI: Webhook SSRF via DNS fail-open in `JobSubmitRequest.validate_webhook_url()` — bypass of CVE-2026-40114

Summary praisonai/jobs/models.py::JobSubmitRequest.validatewebhookurl validates webhook URLs by resolving the hostname and checking whether the IP is private. When DNS resolution fails socket.gaierror, the validator silently passes the URL via except socket.gaierror: pass. Additionally, even when...

7.1CVSS6.1AI score0.00265EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•15 views

PYSEC-2026-3890 PraisonAI vulnerable to Server-Side Request Forgery via DNS rebinding bypass in webhook_url validation

Summary The webhookurl field in the Jobs API silently passes validation when DNS resolution fails socket.gaierror, enabling DNS rebinding attacks. An attacker's domain can initially resolve to a public IP passing validation then switch to an internal IP before the server makes the HTTP request...

6.8CVSS6AI score0.00342EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•20 views

PYSEC-2026-3888 PraisonAI: [Path Traversal] agent tools escape the configured workspace via symlinks

Summary PraisonAI's praisonai.code tool wrappers exported as CODETOOLS for agents expose a workspace setting that the module itself treats as a path-traversal security boundary — readfile, writefile, applydiff, and searchreplace explicitly call ispathwithindirectory and return "… is outside the...

7.1CVSS6.2AI score0.00394EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•17 views

PYSEC-2026-3894 PraisonAI: [Auth Bypass] `praisonai serve agents --api-key` is silently ignored — agent-invocation routes (`POST /agents`, `POST /agents/{agent_name}`) run unauthenticated

Summary praisonai serve agents exposes HTTP routes that invoke registered agents. The CLI advertises --api-key with help text "API key for authentication", parses it, and forwards it into ServeHandler. But createagentsapp never reads config"apikey" again and installs no auth dependency or...

7.3CVSS6.1AI score0.00448EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•21 views

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...

7.5CVSS6AI score0.00242EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•16 views

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...

8.8CVSS8AI score0.01097EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•20 views

PYSEC-2026-3850 Hydra: hydra.utils.instantiate with untrusted config can lead to code execution

Summary hydra.utils.instantiate resolves and calls Python objects from config. If an application passes untrusted config to instantiate, an attacker who controls target and its arguments can cause arbitrary code execution in the consuming process. Hydra is not a network service. Exploitation...

7.8CVSS7.8AI score0.00456EPSS
SaveExploits0References9
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•16 views

PYSEC-2026-3898 praisonaiagents web_crawl vulnerable to SSRF via redirect-following

Summary webcrawl an exported, model-callable tool validates only the INITIAL URL's resolved IP against a private/loopback blocklist, then fetches with httpx.Clientfollowredirects=True and never re-validates redirect targets. An attacker who controls the agent's crawl target a malicious task, or...

7.5CVSS6AI score0.00507EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•19 views

PYSEC-2026-3900 praisonaiagents has a `web_crawl` SSRF protection bypass via unchecked redirect targets

Summary praisonaiagents.tools.webcrawltools.webcrawl validates the initial URL and blocks direct loopback/private destinations by default, but the default httpx fallback still uses httpx.Clientfollowredirects=True and does not revalidate redirect targets. An attacker-controlled public URL can pas...

7.7CVSS5.8AI score0.00468EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•20 views

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...

6.9CVSS5.7AI score0.00175EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•24 views

PYSEC-2026-3822 django CMS: Plugin move endpoint allows cyclic reparenting (DoS)

Summary The moveplugin admin endpoint does not prevent a plugin from being reparented under itself or one of its own descendants. Doing so creates a cycle in the plugin tree, after which the recursive descendant/ancestor SQL queries loop without terminating, stalling the request worker. Details...

7.1CVSS6AI score0.00487EPSS
SaveExploits0References8
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•17 views

PYSEC-2026-3862 mcp-contextforge-gateway has RestrictedPython sandbox bypass via getattr builtin in python_sandbox_server

Commit: f855e54d5b7bc1c91b977574a03b91eff6b86bb6 Component: mcp-servers/python/pythonsandboxserver/src/pythonsandboxserver/serverfastmcp.py Vulnerability RestrictedPython's sandbox in ContextForge's pythonsandboxserver sub-project allows arbitrary Python execution via three compounding weaknesses...

10CVSS6.2AI score0.01141EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•19 views

PYSEC-2026-3824 django CMS: Page cache ignores plugin-declared Vary headers (disclosure & poisoning)

Summary The CMS page cache key ignores the request headers that plugins declare via getvarycacheon. The header is added to the response Vary header, but the CMS's own cache key does not incorporate the header values, so the first visitor's variant is served to all subsequent visitors regardless o...

4.8CVSS5.8AI score0.0018EPSS
SaveExploits0References11
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•21 views

PYSEC-2026-3891 PraisonAI workflow include bypasses tools.py autoload opt-in and executes included recipe code

Summary PraisonAI's workflow include implementation implicitly imports and executes an included recipe's tools.py file even when the documented tools.py autoload opt-in is unset. This bypasses the hardening added for the prior automatic tools.py RCE advisory family. A workflow that includes an...

7.8CVSS6.5AI score0.00224EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•20 views

PYSEC-2026-3903 PraisonAI workflow include bypasses tools.py autoload opt-in and executes included recipe code

Summary PraisonAI's workflow include implementation implicitly imports and executes an included recipe's tools.py file even when the documented tools.py autoload opt-in is unset. This bypasses the hardening added for the prior automatic tools.py RCE advisory family. A workflow that includes an...

7.8CVSS6.5AI score0.00224EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•18 views

PYSEC-2026-3823 django CMS: Missing authorization in `render_object_structure` discloses non-PageContent placeholder structure to low-privileged staff

Summary The django-cms frontend-editing structure endpoint GET //admin/cms/placeholder/object//structure// did not perform an object-level authorization check for non-PageContent objects. Any authenticated, active staff user could request the structure endpoint for a frontend-editable object a...

4.3CVSS6AI score0.00342EPSS
SaveExploits0References8
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•18 views

PYSEC-2026-3820 django CMS: Clipboard copy IDOR discloses unauthorized plugin content

Summary The clipboard copy paths of the copyplugins admin endpoint validate only the target the user's own clipboard and skip source-side authorization. A staff user can copy plugins out of a placeholder they have no permission on into their clipboard, then read the secret content. Details In...

6.5CVSS5.9AI score0.00415EPSS
SaveExploits0References8
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•20 views

PYSEC-2026-3939 Wagtail: Improper restriction handling on Pages admin API

Impact The internal Pages admin API incorrectly returns page fields without access control when they are declared in apifields. A user with access to the Wagtail admin can use this API to fetch draft and live page fields’ contents that are part of apifields on the base page model title, slug,...

4.3CVSS5.5AI score0.00342EPSS
SaveExploits0References5
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•22 views

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...

7.7CVSS6AI score0.00531EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•20 views

PYSEC-2026-3821 django CMS: Broken access control in page *Duplicate* allows reading the content of any page (cross-site / restriction bypass)

Impact The only authorization gate on the duplicate flow is PageAdmin.hasaddpermission, which checks usercanaddpageuser, site / usercanaddsubpage... — i.e. “may this user create a page at all”. Nothing checks the user’s relationship to the page being copied: - cms/admin/forms.py —...

6.5CVSS5.6AI score0.00415EPSS
SaveExploits0References8
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•18 views

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...

10CVSS6.5AI score0.01226EPSS
SaveExploits0References8
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•21 views

PYSEC-2026-3826 django CMS: Structure endpoint bypasses page-view permission

Summary The structure-board endpoint renderobjectstructure renders a page's plugin structure without verifying that the requesting user is allowed to view the page. The edit and preview endpoints enforce this via renderpage, but the structure endpoint does not, allowing a low-privileged staff use...

6.5CVSS5.8AI score0.00415EPSS
SaveExploits0References8
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•20 views

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...

5CVSS6AI score0.00177EPSS
SaveExploits0References8
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•23 views

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...

7.7CVSS6AI score0.00531EPSS
SaveExploits0References7
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•14 views

PYSEC-2026-3870 NLTK TweetTokenizer vulnerable to denial of service through catastrophic regex backtracking

The URLS regular expression in nltk/tokenize/casual.py, compiled into TweetTokenizer.WORDRE and applied by TweetTokenizer.tokenize, contains a naked-domain branch whose domain-label prefix a-z0-9+?:.-a-z0-9+ is unbounded. Input consisting of many alternating label separators can be partitioned in...

8.7CVSS5.8AI score0.00742EPSS
SaveExploits0References10
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•28 views

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...

4.4CVSS5.8AI score0.00261EPSS
SaveExploits0References8
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•18 views

PYSEC-2026-3858 langgraph-api: Incomplete assistant authorization in LangGraph Server run creation

Summary In affected versions of langgraph-api the LangGraph Server runtime, the run-creation path authorized the assistant attached to a run using a different authorization event than the rest of the assistant-handling code paths. Direct assistant reads and cron creation dispatch the...

5.9CVSS5.8AI score0.00255EPSS
SaveExploits0References5
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•20 views

PYSEC-2026-3857 langgraph-api: Relative webhook targets in LangGraph Server can reach in-process routes without authentication

Summary In affected versions of langgraph-api the LangGraph Server runtime, a run or cron could be created with a relative webhook target. When the server later delivers such a webhook, it routes the request back into the same application through an in-process loopback transport that the...

5.9CVSS5.7AI score0.00365EPSS
SaveExploits0References5
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•16 views

PYSEC-2026-3830 Document Merge Service vulnerable to RCE via SSTI (xlsx tempaltes)

Impact A remote code execution RCE via server-side template injection SSTI allows for user supplied code to be executed in the server's context where it is executed as the document-merge-server user with the UID 901 thus giving an attacker considerable control over the container. The vulnerabilit...

7.2CVSS6.1AI score0.00493EPSS
SaveExploits0References6
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•21 views

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...

8.8CVSS6.8AI score0.00262EPSS
SaveExploits0References6
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•12 views

PYSEC-2026-3841 GitPython: Arbitrary file read via --pathspec-from-file in IndexFile.remove() and Head.checkout()

Summary IndexFile.remove and Head.checkout forward kwargs into git rm and git checkout with no guard. Passing --pathspec-from-file= together with --pathspec-file-nul makes Git treat the whole file as a single NUL-delimited pathspec, and the unmatched-pathspec error quotes it verbatim. GitPython...

6.5CVSS6.7AI score0.00412EPSS
SaveExploits1References9
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•16 views

PYSEC-2026-3843 GitPython: Unsafe git option guard bypass via split_single_char_options=False short-option token smuggling enables command execution

Summary The checkunsafeoptions guard can be bypassed on every guarded method clone/clonefrom, fetch/pull/push, lsremote, itercommits, blame, archive by combining a single-character kwarg with splitsinglecharoptions=False. The guard's candidate list omits the smuggled option, but transformkwarg...

8.8CVSS8.2AI score0.0091EPSS
SaveExploits1References9
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•13 views

PYSEC-2026-3840 GitPython: Unguarded git option forwarding in Repo.init enables arbitrary command execution via --template clone hooks

Summary Repo.init forwards kwargs verbatim to git init with no unsafe-option guard and no allowunsafeoptions parameter. git init --template= copies /hooks/ into the new repo's .git/hooks, so an attacker-controlled template kwarg plants a hook that executes on the next git operation → arbitrary co...

7.5CVSS8.4AI score0.00825EPSS
SaveExploits1References9
osv_pysec
osv_pysec
•added 2026/09/10 9:44 a.m.•18 views

PYSEC-2026-3838 GitPython: Unguarded git read-tree option forwarding in IndexFile.from_tree/reset/merge_tree enables arbitrary file overwrite

Summary IndexFile.fromtree, IndexFile.reset → fromtree and IndexFile.mergetree append caller-influenced treeish strings positionally to git read-tree with no unsafe-option guard, no allowunsafeoptions parameter, and no -- separator. git read-tree --index-output= writes the resulting index to an...

8.1CVSS7.5AI score0.00543EPSS
SaveExploits1References9
Total number of security vulnerabilities7962