Skip to content

fastapi-0.128.8-py3-none-any.whl: 2 vulnerabilities (highest severity is: 6.5) #254

@mend-for-github-com

Description

@mend-for-github-com
Vulnerable Library - fastapi-0.128.8-py3-none-any.whl

Path to dependency file: /requirements.txt

Path to vulnerable library: /tmp/ws-ua_20260414115749_FASALT/python_KPPKZR/202604141157501/env/lib/python3.9/site-packages/idna-3.11.dist-info

Vulnerabilities

Vulnerability Severity CVSS Exploit Maturity EPSS Dependency Type Fixed in (fastapi version) Remediation Possible** Reachability
CVE-2026-48710 Medium 6.5 Not Defined 0.034% starlette-0.49.3-py3-none-any.whl Transitive N/A*
CVE-2026-45409 Medium 5.3 Not Defined idna-3.11-py3-none-any.whl Transitive N/A*

*For some transitive vulnerabilities, there is no version of direct dependency with a fix. Check the "Details" section below to see if there is a version of transitive dependency where vulnerability is fixed.

**In some cases, Remediation PR cannot be created automatically for a vulnerability despite the availability of remediation

Details

CVE-2026-48710

Vulnerable Library - starlette-0.49.3-py3-none-any.whl

The little ASGI library that shines.

Library home page: https://files.pythonhosted.org/packages/a3/e0/021c772d6a662f43b63044ab481dc6ac7592447605b5b35a957785363122/starlette-0.49.3-py3-none-any.whl

Path to dependency file: /requirements.txt

Path to vulnerable library: /tmp/ws-ua_20260203151958_QLDRQL/python_VXNOQS/202602031519591/env/lib/python3.9/site-packages/starlette-0.49.3.dist-info,/tmp/ws-ua_20260414115749_FASALT/python_KPPKZR/202604141157501/env/lib/python3.9/site-packages/starlette-0.49.3.dist-info

Dependency Hierarchy:

  • fastapi-0.128.8-py3-none-any.whl (Root Library)
    • starlette-0.49.3-py3-none-any.whl (Vulnerable Library)

Found in base branch: main

Vulnerability Details

Starlette is a lightweight ASGI framework/toolkit. Prior to version 1.0.1, the HTTP "Host" request header was not validated before being used to reconstruct "request.url". Because the routing algorithm relies on the raw HTTP path while "request.url" is rebuilt from the "Host" header, a malformed header could make "request.url.path" differ from the path that was actually requested. Middleware and endpoints that apply security restrictions based on "request.url" (rather than the raw "scope" path) could therefore be bypassed. Users should upgrade to a version greater than or equal to version 1.0.1, which validates the "Host" header against the grammar of RFC 9112 §3.2 / RFC 3986 §3.2.2 when constructing "request.url" and falls back to "scope["server"]" for malformed values.

Publish Date: 2026-05-26

URL: CVE-2026-48710

Threat Assessment

Exploit Maturity: Not Defined

EPSS: 0.034%

CVSS 3 Score Details (6.5)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: Low
    • Integrity Impact: Low
    • Availability Impact: None

For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: GHSA-86qp-5c8j-p5mr

Release Date: 2026-05-26

Fix Resolution: starlette - 1.0.1,starlette - 1.0.1,https://github.com/Kludex/starlette.git - 1.0.1

CVE-2026-45409

Vulnerable Library - idna-3.11-py3-none-any.whl

Internationalized Domain Names in Applications (IDNA)

Library home page: https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl

Path to dependency file: /requirements.txt

Path to vulnerable library: /tmp/ws-ua_20260414115749_FASALT/python_KPPKZR/202604141157501/env/lib/python3.9/site-packages/idna-3.11.dist-info

Dependency Hierarchy:

  • fastapi-0.128.8-py3-none-any.whl (Root Library)
    • starlette-0.49.3-py3-none-any.whl
      • anyio-4.12.1-py3-none-any.whl
        • idna-3.11-py3-none-any.whl (Vulnerable Library)

Found in base branch: main

Vulnerability Details

This is the same issue as CVE-2024-3651, however the original remediation in 2024 was not a complete fix. Payloads such as ""\u0660" * N" or ""\u30fb" * N + "\u6f22"" utilize the "valid_contexto" function prior to length rejection, and for high values of "N" will take a long time to process. Impact A specially crafted argument to the "idna.encode()" function could consume significant resources. This may lead to a denial-of-service. Patches Starting in version 3.14, the function rejects long inputs as soon as practicable prior to any further processing to minimize resource consumption. In version 3.15, this approach was extended to lesser used alternate functions (i.e. per-label conversions and codec support). Workarounds Domain names cannot exceed 253 characters in length, if this length limit is enforced prior to passing the domain to the "idna.encode()" function it should no longer consume significant resources. This is triggered by arbitrarily large inputs that would not occur in normal usage, but may be passed to the library assuming there is no preliminary input validation by the higher-level application.

Publish Date: 2026-05-21

URL: CVE-2026-45409

Threat Assessment

Exploit Maturity: Not Defined

EPSS:

CVSS 3 Score Details (5.3)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: None
    • Integrity Impact: None
    • Availability Impact: Low

For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: GHSA-65pc-fj4g-8rjx

Release Date: 2026-05-19

Fix Resolution: idna - 3.15

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions