MariaDB Server before 10.7 is vulnerable to Denial of Service. While executing the plugin/server_audit/server_audit.c method log_statement_ex, the held lock lock_bigbuffer is not released correctly, which allows local users to trigger a denial of service due to the deadlock.
The product does not properly acquire or release a lock on a resource, leading to unexpected resource state changes and behaviors.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Mariadb | Mariadb | * | 10.2.41 (excluding) |
Mariadb | Mariadb | 10.3.0 (including) | 10.3.32 (excluding) |
Mariadb | Mariadb | 10.4.0 (including) | 10.4.22 (excluding) |
Mariadb | Mariadb | 10.5.0 (including) | 10.5.13 (excluding) |
Mariadb | Mariadb | 10.6.0 (including) | 10.6.5 (excluding) |
Locking is a type of synchronization behavior that ensures that multiple independently-operating processes or threads do not interfere with each other when accessing the same resource. All processes/threads are expected to follow the same steps for locking. If these steps are not followed precisely - or if no locking is done at all - then another process/thread could modify the shared resource in a way that is not visible or predictable to the original process. This can lead to data or memory corruption, denial of service, etc.