Description
Open WebUI is a self-hosted artificial intelligence platform designed to operate entirely offline. Prior to 0.9.0, he LDAP and OAuth authentication flows use a TOCTOU (Time-of-Check-Time-of-Use) pattern for first-user admin role assignment. The regular signup handler (signup_handler in auths.py, line 663) was explicitly patched to prevent this race with the comment "Insert with default role first to avoid TOCTOU race", but the LDAP and OAuth code paths were never updated with the same fix. This vulnerability is fixed in 0.9.0.
Problem types
CWE-269: Improper Privilege Management
CWE-362: Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')
Product status
References
github.com/...-webui/security/advisories/GHSA-h3ww-q6xx-w7x3
github.com/open-webui/open-webui/pull/23626
github.com/...ommit/96a0b3239b1aadb23fc359bf10849c9ba12fd6ec