Critical · published January 1, 2026
⚡ A predictable key generation algorithm in RAGFlow could hand over the keys to your kingdom! 🤯 Imagine a restaurant where the chef's secret sauce recipe is written on a public menu—anyone can just take it and whip up the special dish! In this case, an unauthorized user can derive your personal API key from predictable tokens, potentially taking full control of your assistant/agent account. If an attacker gets hold of your shared assistant/agent URL, they could easily generate your API key, leading to a complete takeover of your account! This means unauthorized access to sensitive information and functionality—absolutely devastating!
Imagine a restaurant where the chef's secret sauce recipe is written on a public menu—anyone can just take it and whip up the special dish! In this case, an unauthorized user can derive your personal API key from predictable tokens, potentially taking full control of your assistant/agent account. Versions of RAGFlow prior to 0.22.0 use the same `URLSafeTimedSerializer` with predictable inputs for generating both API keys and tokens, allowing attackers to derive your personal API key from the shared token.
If an attacker gets hold of your shared assistant/agent URL, they could easily generate your API key, leading to a complete takeover of your account! This means unauthorized access to sensitive information and functionality—absolutely devastating! Upgrade to RAGFlow version 0.22.0 immediately to patch this vulnerability! Additionally, review your API key management and access controls to minimize exposure to unauthorized users. You've got this! Fixing this is simple—just update your version and you'll be back on track! 🛡️
| Product | Versions | Fixed in |
|---|---|---|
| infiniflow/ragflow | < 0.22.0 | 0.22.0 |