<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://db.gcve.eu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Fri, 02 Oct 2026 11:07:17 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-44551 — Open WebUI: LDAP Empty Password Authentication Bypass</title>
      <link>https://db.gcve.eu/vuln/cve-2026-44551</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; open-webui&lt;/p&gt;
&lt;p&gt;Open WebUI is a self-hosted artificial intelligence platform designed to operate entirely offline. Prior to 0.9.0, the LDAP authentication endpoint does not validate that the submitted password is non-empty before performing a Simple Bind against the LDAP server. The LdapForm Pydantic model accepts password: str with no minimum length constraint, so an empty string passes validation. The subsequent Connection.bind() call succeeds on vulnerable LDAP servers, and the application issues a full session token for the target user. This vulnerability is fixed in 0.9.0.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; open-webui&lt;/p&gt;
&lt;p&gt;Open WebUI is a self-hosted artificial intelligence platform designed to operate entirely offline. Prior to 0.9.0, the LDAP authentication endpoint does not validate that the submitted password is non-empty before performing a Simple Bind against the LDAP server. The LdapForm Pydantic model accepts password: str with no minimum length constraint, so an empty string passes validation. The subsequent Connection.bind() call succeeds on vulnerable LDAP servers, and the application issues a full session token for the target user. This vulnerability is fixed in 0.9.0.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/cve-2026-44551</guid>
    </item>
    <item>
      <title>GHSA-2r4p-jpmg-48f4 — Open WebUI has an LDAP Empty Password Authentication Bypass</title>
      <link>https://db.gcve.eu/vuln/ghsa-2r4p-jpmg-48f4</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: open-webui&lt;/p&gt;
&lt;p&gt;# LDAP Empty Password Authentication Bypass&lt;/p&gt;
&lt;p&gt;## Affected Component&lt;/p&gt;
&lt;p&gt;LDAP authentication endpoint:
- `backend/open_webui/routers/auths.py` (lines 468-477, user bind with empty password)
- `backend/open_webui/models/auths.py` (lines 58-60, `LdapForm` model)&lt;/p&gt;
&lt;p&gt;## Affected Versions&lt;/p&gt;
&lt;p&gt;Current main branch (commit `6fdd19bf1`) and likely all versions with LDAP authentication support.&lt;/p&gt;
&lt;p&gt;## Description&lt;/p&gt;
&lt;p&gt;The LDAP authentication endpoint does not validate that the submitted password is non-empty before performing a Simple Bind against the LDAP server. Per RFC 4513 Section 5.1.2, a Simple Bind with a valid DN and an empty password constitutes an &amp;#34;unauthenticated simple authentication&amp;#34; — many LDAP servers (including OpenLDAP in default configuration and some Active Directory setups) return success (resultCode 0) for this operation.&lt;/p&gt;
&lt;p&gt;The `LdapForm` Pydantic model accepts `password: str` with no minimum length constraint, so an empty string passes validation. The subsequent `Connection.bind()` call succeeds on vulnerable LDAP servers, and the application issues a full session token for the target user.&lt;/p&gt;
&lt;p&gt;```python
# models/auths.py:58-60 — no min_length on password
class LdapForm(BaseModel):
    user: str
    password: str&lt;/p&gt;
&lt;p&gt;# auths.py:469-477 — empty password reaches LDAP bind
connection_user = Connection(
    server,
    user_dn,
    form_data.password,    # can be &amp;#34;&amp;#34;
    auto_bind=&amp;#39;NONE&amp;#39;,
    authentication=&amp;#39;SIMPLE&amp;#39;,
)
if not await asyncio.to_thread(connection_user.bind):
    raise HTTPExcep…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: open-webui&lt;/p&gt;
&lt;p&gt;# LDAP Empty Password Authentication Bypass&lt;/p&gt;
&lt;p&gt;## Affected Component&lt;/p&gt;
&lt;p&gt;LDAP authentication endpoint:
- `backend/open_webui/routers/auths.py` (lines 468-477, user bind with empty password)
- `backend/open_webui/models/auths.py` (lines 58-60, `LdapForm` model)&lt;/p&gt;
&lt;p&gt;## Affected Versions&lt;/p&gt;
&lt;p&gt;Current main branch (commit `6fdd19bf1`) and likely all versions with LDAP authentication support.&lt;/p&gt;
&lt;p&gt;## Description&lt;/p&gt;
&lt;p&gt;The LDAP authentication endpoint does not validate that the submitted password is non-empty before performing a Simple Bind against the LDAP server. Per RFC 4513 Section 5.1.2, a Simple Bind with a valid DN and an empty password constitutes an &amp;#34;unauthenticated simple authentication&amp;#34; — many LDAP servers (including OpenLDAP in default configuration and some Active Directory setups) return success (resultCode 0) for this operation.&lt;/p&gt;
&lt;p&gt;The `LdapForm` Pydantic model accepts `password: str` with no minimum length constraint, so an empty string passes validation. The subsequent `Connection.bind()` call succeeds on vulnerable LDAP servers, and the application issues a full session token for the target user.&lt;/p&gt;
&lt;p&gt;```python
# models/auths.py:58-60 — no min_length on password
class LdapForm(BaseModel):
    user: str
    password: str&lt;/p&gt;
&lt;p&gt;# auths.py:469-477 — empty password reaches LDAP bind
connection_user = Connection(
    server,
    user_dn,
    form_data.password,    # can be &amp;#34;&amp;#34;
    auto_bind=&amp;#39;NONE&amp;#39;,
    authentication=&amp;#39;SIMPLE&amp;#39;,
)
if not await asyncio.to_thread(connection_user.bind):
    raise HTTPExcep…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/ghsa-2r4p-jpmg-48f4</guid>
    </item>
  </channel>
</rss>
