WsgiDAV is a generic and extendable WebDAV server based on WSGI. Prior to 4.3.5, the sample MySQLBrowserProvider in wsgidav/samples/mysql_dav_provider.py concatenates the record key parsed from a request URL directly into SQL WHERE clauses. The affected _exists_record_by_primary_key, _get_field_by_primary_key, and _get_record_by_primary_key methods are part of a shipped example provider that is not enabled by default. An attacker who can access a share explicitly configured with this non-default provider can inject SQL through a normal GET request; anonymously exposed read shares permit a status-code oracle and extraction of arbitrary data reachable by the configured MySQL account. This issue is fixed in version 4.3.5.
https://github.com/Jvr2022/security-research
https://github.com/mar10/wsgidav/security/advisories/GHSA-p6gw-4frg-j7jw
https://github.com/mar10/wsgidav/releases/tag/v4.3.5
https://github.com/mar10/wsgidav/commit/6f35776c9188f130ab044ce557015d51aaa83500
https://github.com/mar10/wsgidav/blob/master/CHANGELOG.md#435--2026-06-27
Published: 2026-08-28
Updated: 2026-08-28
Base Score: 7.5
Vector: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P
Severity: High
Base Score: 9.8
Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Severity: Critical
Base Score: 8.8
Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N
Severity: High
EPSS: 0.00398