Description
Wazuh is a free and open source platform used for threat prevention, detection, and response. From 4.6.0 until 4.14.6 and 5.0.0-beta3, DB::getFile() and DB::searchFile() in src/syscheckd/src/db/src/file.cpp concatenate a monitored file path into SQLite row filters. On non-Windows systems, FIMDBCreator::encodeString() does not escape the value. A local user who can create a filename in a File Integrity Monitoring directory can inject a UNION SELECT expression when wazuh-syscheckd processes or deletes that path. The confirmed primitive manipulates SELECT result sets consumed by the FIM code; stacked statements and remote code execution were not demonstrated. This issue is fixed in versions 4.14.6 and 5.0.0-beta3.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
wazuh wazuh
>= 4.6.0, < 4.14.6affected>= 5.0.0-beta1, < 5.0.0-beta3affected
References
- https://github.com/wazuh/wazuh/security/advisories/GHSA-9c4x-mrjh-rmw5 ↗
- https://github.com/wazuh/wazuh/pull/36399 ↗
- https://github.com/wazuh/wazuh/commit/8e4e25b971dfb7b15bc492f10f8a350e6b37e70e ↗
- https://github.com/wazuh/wazuh/releases/tag/v4.14.6 ↗
- https://github.com/wazuh/wazuh/releases/tag/v5.0.0-beta3 ↗