p PatchFirst

PatchFirst · Latest vulnerabilities

Python stack vulnerabilities · Page 99

Vulnerabilities published for Python in the last 30 days: 350. Listed in the KEV catalogue: 1.

Filter vulnerabilities
Python

Vulnerabilities: 7131

  1. GHSA-q9m2-fhv9-3jcf

    Medium · CVSS 5.1Fix available

    `potato-annotation` has a Project-Boundary Bypass

    ## Summary `validate_path_security` uses string-prefix containment (`startswith`) for boundary checks. This allows paths that are **outside** the intended project directory but share its prefix string (e.g., `/tmp/potato_proj_demo_evil/...` vs `/tmp/potato_proj_demo`) to be accepted. ## Details ### Affected source location (root cause) **File:** `potato/server_utils/config_module.py` **Snippet (lines 370–373):** ```python real_path = os.path.realpath(normalized_path) real_base = os.path.realpath(base_dir) if not real_path.startswith(real_base): raise ConfigSecurityError(...) ``` **Snippet (lines 384–389):** ```python real_path = os.pat

    • Update to 2.4.5
  2. GHSA-52cq-7v8r-62c6

    High · CVSS 8.3Fix available

    gmaps-mcp's unauthenticated HTTP transport allows unlimited Google Maps API calls at operator expense

    ## Unauthenticated HTTP Transport Allows Unlimited Google Maps API Calls at Operator Expense The `gmaps-mcp` codebase was reviewed at commit `e671db68c804c9e67d51582d3280839ffa65f127` and three issues worth flagging were discovered — one high-severity, one medium, one structural. There were no preexisiting CVEs for this package yet and the repository had no prior security issues. The primary issue is that the HTTP transport in `server.py` skips authentication entirely when `MCP_API_KEY` is not set — which is the default, since `.env.example` ships the key as a blank value. Any unauthenticated caller who knows the server's public URL can inv

    • Update to 0.1.3
  3. CVE-2026-44340

    High · CVSS 8.7EPSS 0.43%Fix available

    PraisonAI: Symlink-extraction bypass of `_safe_extractall` writes outside `dest_dir`

    PraisonAI is a multi-agent teams system. Prior to version 4.6.37, the _safe_extractall helper that all recipe pull, recipe publish, and recipe unpack flows route through validates each archive member's name for absolute paths, .. segments, and resolved-path escape — but does not validate member.linkname, does not reject symlink/hardlink members, and calls tar.extractall(dest_dir) without filter="data". A bundle that contains a symlink with a name inside dest_dir but a linkname pointing outside it, followed by a regular file whose path traverses through the just-created symlink, escapes dest_dir and lets the attacker write arbitrary content to

    • Update to 4.6.37
    Published Updated
  4. CVE-2026-44339

    High · CVSS 8.6EPSS 0.36%Fix available

    PraisonAI has unsafe tool resolution in `ToolExecutionMixin.execute_tool`: undeclared `__main__` callables execute

    PraisonAI is a multi-agent teams system. Prior to praisonai version 4.6.37 and praisonaiagents version 1.6.37, praisonaiagents resolves unresolved tool names against module globals and __main__ after it fails to match the declared tool list and the registry. With the default agent configuration, _perm_allow is None, so undeclared non-dangerous tool names are not rejected by the permission gate. An attacker who can influence tool-call names can therefore invoke unintended application callables that were never declared as tools. This issue has been patched in praisonai version 4.6.37 and praisonaiagents version 1.6.37.

    • Update to 1.6.37
    • Update to 4.6.37
    Published Updated
  5. CVE-2026-44338

    High · CVSS 7.3EPSS 32.59%Public exploitFix available

    PraisonAI ships and generates a legacy API server with authentication disabled by default, allowing unauthenticated workflow execution

    PraisonAI is a multi-agent teams system. From version 2.5.6 to before version 4.6.34, PraisonAI ships a legacy Flask API server with authentication disabled by default. When that server is used, any caller that can reach it can access /agents and trigger the configured agents.yaml workflow through /chat without providing a token. This issue has been patched in version 4.6.34.

    • Update to 4.6.34
    Published Updated
  6. CVE-2026-44337

    Medium · CVSS 6.3EPSS 0.22%Fix available

    PraisonAI knowledge-store backends interpolate unvalidated collection names into SQL and CQL queries

    PraisonAI is a multi-agent teams system. From version 2.4.1 to before version 4.6.34, PraisonAI exposes optional SQL/CQL-backed knowledge-store implementations that build table and index identifiers from unvalidated name and collection arguments. Applications that pass untrusted collection names into these backends can trigger SQL or CQL injection. This issue has been patched in version 4.6.34.

    • Update to 4.6.34
    Published Updated
  7. CVE-2026-44336

    Critical · CVSS 9.4EPSS 0.62%Fix available

    PraisonAI MCP `tools/call` path-traversal and RCE via Python `.pth` injection

    PraisonAI is a multi-agent teams system. Prior to version 4.6.34, PraisonAI's MCP (Model Context Protocol) server (praisonai mcp serve) registers four file-handling tools by default — praisonai.rules.create, praisonai.rules.show, praisonai.rules.delete, and praisonai.workflow.show. Each accepts a path or filename string from MCP tools/call arguments and joins it onto ~/.praison/rules/ (or, for workflow.show, accepts an absolute path) with no containment check. The JSON-RPC dispatcher passes params["arguments"] blind to each handler via **kwargs without validating against the advertised input schema. By setting rule_name="../../<some-path>" an

    • Update to 4.6.34
    Published Updated
  8. CVE-2026-44335

    High · CVSS 7.7EPSS 0.38%Fix available

    SSRF bypass in PraisonAI

    PraisonAI is a multi-agent teams system. Prior to version 1.6.32, the URL checking logic in PraisonAI has a logical flaw that could be bypassed by attackers, leading to SSRF attacks. This issue has been patched in version 1.6.32.

    • Update to 1.6.32
    Published Updated
  9. CVE-2026-44334

    High · CVSS 8.4EPSS 0.25%Fix available

    PraisonAI: Unauthenticated RCE via `tool_override.py`

    PraisonAI is a multi-agent teams system. From version 4.5.139 to before version 4.6.32, CVE-2026-40287's fix gated tools.py auto-import behind PRAISONAI_ALLOW_LOCAL_TOOLS=true in two files (tool_resolver.py, api/call.py). A third import sink in praisonai/templates/tool_override.py was missed and remains unguarded. It is reached by the recipe runner on every recipe execution and is remotely triggerable through POST /v1/recipes/run with a recipe value pointing at any local absolute path or any GitHub repo (because SecurityConfig.allow_any_github defaults to True). The attacker drops a tools.py next to TEMPLATE.yaml; the server exec_module()s it

    • Update to 4.6.32
    Published Updated
  10. CVE-2026-41497

    Critical · CVSS 9.8EPSS 0.54%Fix available

    Incomplete fix for CVE-2026-34935: Command Injection in MervinPraison/PraisonAI

    PraisonAI is a multi-agent teams system. Prior to version 4.6.9, the fix for PraisonAI's MCP command handling does not add a command allowlist or argument validation to parse_mcp_command(), allowing arbitrary executables like bash, python, or /bin/sh with inline code execution flags to pass through to subprocess execution. This issue has been patched in version 4.6.9.

    • Update to 4.5.149
  11. CVE-2026-41496

    High · CVSS 8.1EPSS 0.35%Fix available

    PraisonAI: SQL Injection via unvalidated `table_prefix` in 9 conversation store backends (incomplete fix for CVE-2026-40315)

    PraisonAI is a multi-agent teams system. Prior to praisonai version 4.6.9 and praisonaiagents version 1.6.9, the fix for CVE-2026-40315 added input validation to SQLiteConversationStore only. Nine sibling backends — MySQL, PostgreSQL, async SQLite/MySQL/PostgreSQL, Turso, SingleStore, Supabase, SurrealDB — pass table_prefix straight into f-string SQL. Same root cause, same code pattern, same exploitation. 52 unvalidated injection points across the codebase. postgres.py additionally accepts an unvalidated schema parameter used directly in DDL. This issue has been patched in praisonai version 4.6.9 and praisonaiagents version 1.6.9.

    • Update to 1.6.8
    • Update to 4.5.149
    Published Updated
  12. CVE-2026-42208

    Critical · CVSS 9.3EPSS 89.42%In KEVPublic exploitFix available

    LiteLLM: SQL injection in Proxy API key verification

    LiteLLM is a proxy server (AI Gateway) to call LLM APIs in OpenAI (or native) format. From version 1.81.16 to before version 1.83.7, a database query used during proxy API key checks mixed the caller-supplied key value into the query text instead of passing it as a separate parameter. An unauthenticated attacker could send a specially crafted Authorization header to any LLM API route (for example POST /chat/completions) and reach this query through the proxy's error-handling path. An attacker could read data from the proxy's database and may be able to modify it, leading to unauthorised access to the proxy and the credentials it manages. This

    • Update to 1.83.7
    Published Updated
  13. CVE-2026-42203

    High · CVSS 8.6EPSS 0.37%Fix available

    LiteLLM: Server-Side Template Injection in /prompts/test endpoint

    LiteLLM is a proxy server (AI Gateway) to call LLM APIs in OpenAI (or native) format. From version 1.80.5 to before version 1.83.7, the POST /prompts/test endpoint accepted user-supplied prompt templates and rendered them without sandboxing. A crafted template could run arbitrary code inside the LiteLLM Proxy process. The endpoint only checks that the caller presents a valid proxy API key, so any authenticated user could reach it. Depending on how the proxy is deployed, this could expose secrets in the process environment (such as provider API keys or database credentials) and allow commands to be run on the host. This issue has been patched

    • Update to 1.83.7
    Published Updated
  14. CVE-2026-42271

    High · CVSS 8.7EPSS 91.44%In KEVPublic exploitFix available

    LiteLLM: Authenticated command execution via MCP stdio test endpoints

    LiteLLM is a proxy server (AI Gateway) to call LLM APIs in OpenAI (or native) format. From version 1.74.2 to before version 1.83.7, two endpoints used to preview an MCP server before saving it — POST /mcp-rest/test/connection and POST /mcp-rest/test/tools/list — accepted a full server configuration in the request body, including the command, args, and env fields used by the stdio transport. When called with a stdio configuration, the endpoints attempted to connect, which spawned the supplied command as a subprocess on the proxy host with the privileges of the proxy process. The endpoints were gated only by a valid proxy API key, with no role

    • Update to 1.83.7
    Published Updated
  15. CVE-2026-42150

    Medium · CVSS 5.1EPSS 0.17%Fix available

    wlc: print_html outputs API data without HTML escaping, enabling stored XSS

    wlc is a Weblate command-line client using Weblate's REST API. Prior to version 2.0.0, the HTML output format in wlc embeds API response data into HTML without escaping, allowing cross-site scripting when the output is rendered in a browser. This issue has been patched in version 2.0.0.

    • Update to 2.0.0
    • Update to 2.0.0-1
  16. CVE-2026-38361

    High · CVSS 7.5EPSS 2.64%Public exploitFix available

    CVE-2026-38361

    Multiple unauthenticated denial-of-service (DoS) issues in fohrloop dash-uploader v0.1.0 through v0.7.0a2. The chunked-upload handler (dash_uploader/httprequesthandler.py, dash_uploader/upload.py) trusts unsanitized, attacker-controlled upload parameters (e.g. flowTotalChunks) and does not enforce the documented max_file_size limit, allowing a remote, unauthenticated attacker to cause an out-of-memory (OOM) process crash (unbounded range(1, flowTotalChunks + 1) allocation), truncation of the target file to zero bytes (flowTotalChunks=0, where the all([]) == True quirk runs the file-assembly branch on zero chunks), permanent disk exhaustion (n

    • Update to 0.7.0a1
    Published Updated
  17. GHSA-v7qw-hx66-4w9x

    High · CVSS 8.7Fix available

    netbox-data-flows has stored XSS in ObjectAlias names rendered inside DataFlow tables

    ### Summary An authenticated user who can create or edit `ObjectAlias` objects can store arbitrary HTML/JavaScript in an alias name. That payload is later rendered unescaped in `DataFlow` table views, causing a stored XSS when another user views the affected page. ### Details The issue is caused by unsafe HTML generation in the plugin’s custom table column renderer. Relevant code on `main` (`bf96eac`, same commit as `origin/main` at the time of review): - `netbox_data_flows/models/objectaliases.py` - `ObjectAlias.name` is user-controlled (`CharField`) - `ObjectAlias.__str__()` returns `self.name` directly - `netbox_data_flows/tables/da

    • Update to 1.5.1
  18. CVE-2026-8088

    Medium · CVSS 4.8EPSS 0.25%Fix available

    OSGeo gdal GDapi.c GDfieldinfo out-of-bounds

    A weakness has been identified in OSGeo gdal up to 3.13.0dev-4. The affected element is the function GDfieldinfo of the file frmts/hdf4/hdf-eos/GDapi.c. Executing a manipulation can lead to out-of-bounds read. The attack needs to be launched locally. The exploit has been made available to the public and could be used for attacks. Upgrading to version 3.13.0RC1 is sufficient to fix this issue. This patch is called a791f70f8eaec540974ec989ca6fb00266b7646c. The affected component should be upgraded.

    • Update to 1.10.1+dfsg-5ubuntu1+esm3
    • Update to 1.11.3+dfsg-3ubuntu0.1~esm2
    • Update to 2.2.3+dfsg-2ubuntu0.1~esm1
    • Update to 3.0.4+dfsg-1ubuntu0.1~esm1
    • Update to 3.12.2+dfsg-1ubuntu0.1~esm1
    • Update to 3.13.0
    • Update to 3.13.0+dfsg-1
    • Update to 3.13.0RC1
    • Update to 3.4.1+dfsg-1ubuntu0.1~esm1
    • Update to 3.8.4+dfsg-3ubuntu3+esm1

Check your server

Check your installed stack and versions against the current vulnerability feeds.

Check your server →