{"id":"CVE-2025-69286","aliases":["EUVD-2025-206092","GHSA-9j5g-g4xm-57w7"],"status":"published","title":"RAGFlow has Predictable Token Generation Leading to Authentication Bypass Vulnerability","description":"RAGFlow is an open-source RAG (Retrieval-Augmented Generation) engine. In versions prior to 0.22.0, the use of an insecure key generation algorithm in the API key and beta (assistant/agent share auth) token generation process allows these tokens to be mutually derivable. Specifically, both tokens are generated using the same `URLSafeTimedSerializer` with predictable inputs, enabling an unauthorized user who obtains the shared assistant/agent URL to derive the personal API key. This grants them full control over the assistant/agent owner's account. Version 0.22.0 fixes the issue.","severity":{"version":"4.0","score":8.9,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.00797,"percentile":0.56763,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":true,"fix_available":false},"cwes":["CWE-340"],"published":"2025-12-31T21:52:54Z","modified":"2026-10-28T02:30:33Z","exploits":[{"source":"pocgithub","id":"qianlijaingshan/ragflow-audit","title":"qianlijaingshan/ragflow-audit","date":"2026-08-11","url":"https://github.com/qianlijaingshan/ragflow-audit"}],"products":[{"vendor":"infiniflow","product":"ragflow"}],"references":[{"url":"https://github.com/infiniflow/ragflow/security/advisories/GHSA-9j5g-g4xm-57w7","tags":["x_refsource_CONFIRM","exploit","Exploit","Vendor Advisory","advisory"]},{"url":"https://github.com/infiniflow/ragflow/commit/a3bb4aadcc3494fb27f2a9933b4c46df8eb532e6","tags":["x_refsource_MISC","Patch","fix"]},{"url":"https://github.com/infiniflow/ragflow/blob/v0.20.5/api/apps/system_app.py#L214-L215","tags":["x_refsource_MISC","Product","web"]},{"url":"https://github.com/infiniflow/ragflow/blob/v0.20.5/api/utils/__init__.py#L343","tags":["x_refsource_MISC","Product","web"]},{"url":"https://github.com/infiniflow/ragflow/blob/v0.20.5/api/utils/api_utils.py#L378","tags":["x_refsource_MISC","Product","web"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/69xxx/CVE-2025-69286.json","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2025-69286","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2025-69286","title":"RAGFlow has Predictable Token Generation Leading to Authentication Bypass Vulnerability","description":"RAGFlow is an open-source RAG (Retrieval-Augmented Generation) engine. In versions prior to 0.22.0, the use of an insecure key generation algorithm in the API key and beta (assistant/agent share auth) token generation process allows these tokens to be mutually derivable. Specifically, both tokens are generated using the same `URLSafeTimedSerializer` with predictable inputs, enabling an unauthorized user who obtains the shared assistant/agent URL to derive the personal API key. This grants them full control over the assistant/agent owner's account. Version 0.22.0 fixes the issue.","status":"published","published":"2025-12-31T21:52:54.304Z","modified":"2026-01-02T14:35:31.041Z","cvss":[{"version":"4.0","score":8.9,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P","level":"high","assessor":"cna"}],"cwes":["CWE-340"],"updated_at":"2026-11-02T14:32:40.774223Z"}],"euvd":[{"id":"EUVD-2025-206092","description":"RAGFlow is an open-source RAG (Retrieval-Augmented Generation) engine. In versions prior to 0.22.0, the use of an insecure key generation algorithm in the API key and beta (assistant/agent share auth) token generation process allows these tokens to be mutually derivable. Specifically, both tokens are generated using the same `URLSafeTimedSerializer` with predictable inputs, enabling an unauthorized user who obtains the shared assistant/agent URL to derive the personal API key. This grants them full control over the assistant/agent owner's account. Version 0.22.0 fixes the issue.","status":"published","published":"2025-12-31T21:52:54Z","modified":"2026-01-02T14:35:31Z","cvss":[{"version":"4.0","score":8.9,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P","level":"high"}],"updated_at":"2026-11-02T19:48:59.455836Z"}],"nvd":[{"id":"CVE-2025-69286","description":"RAGFlow is an open-source RAG (Retrieval-Augmented Generation) engine. In versions prior to 0.22.0, the use of an insecure key generation algorithm in the API key and beta (assistant/agent share auth) token generation process allows these tokens to be mutually derivable. Specifically, both tokens are generated using the same `URLSafeTimedSerializer` with predictable inputs, enabling an unauthorized user who obtains the shared assistant/agent URL to derive the personal API key. This grants them full control over the assistant/agent owner's account. Version 0.22.0 fixes the issue.","status":"published","published":"2025-12-31T22:15:49.28Z","modified":"2026-09-23T14:10:00.19Z","cvss":[{"version":"4.0","score":8.9,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"high","assessor":"secondary"},{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"primary"}],"cwes":["CWE-340"],"updated_at":"2026-11-02T14:11:54.323368Z"}],"osv":[{"id":"CVE-2025-69286","title":"RAGFlow has Predictable Token Generation Leading to Authentication Bypass Vulnerability","description":"RAGFlow is an open-source RAG (Retrieval-Augmented Generation) engine. In versions prior to 0.22.0, the use of an insecure key generation algorithm in the API key and beta (assistant/agent share auth) token generation process allows these tokens to be mutually derivable. Specifically, both tokens are generated using the same `URLSafeTimedSerializer` with predictable inputs, enabling an unauthorized user who obtains the shared assistant/agent URL to derive the personal API key. This grants them full control over the assistant/agent owner's account. Version 0.22.0 fixes the issue.","status":"published","published":"2025-12-31T21:52:54.304Z","modified":"2026-10-28T02:30:33.814638301Z","cvss":[{"version":"4.0","score":8.9,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P","level":"high"}],"cwes":["CWE-340"],"updated_at":"2026-11-02T15:44:52.859856Z"}]}}
