Description
phpMyFAQ before 4.1.7, when configured to use PostgreSQL via the native pgsql PHP extension, declares an incorrect LIKE ESCAPE character ('=') in the Search/Database/Pgsql.php backend while escapeLikeWildcards() escapes user input with the '|' prefix. As a result, wildcard escaping is a no-op and user-supplied % and _ characters remain active LIKE wildcards. An unauthenticated attacker can submit such characters in the public FAQ search form to force maximally broad pattern matches and expensive sequential scans, resulting in a denial of service. The PDO PostgreSQL backend is not affected, and quotes remain escaped so this does not enable quote-breaking SQL injection or data exfiltration.
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| thorsten | phpMyFAQ | >= 4.2.0-alpha, < 4.1.7 |
References
- https://github.com/thorsten/phpMyFAQ/security/advisories/GHSA-5hx6-c293-588hExploit, Mitigation, Vendor Advisory
- https://www.vulncheck.com/advisories/phpmyfaq-before-like-wildcard-injection-via-postgresqlThird Party Advisory
- https://github.com/thorsten/phpMyFAQ/security/advisories/GHSA-5hx6-c293-588hExploit, Mitigation, Vendor Advisory
Timeline
- Published
- Aug 19, 2026
- Last modified
- Sep 1, 2026
- NVD status
- Analyzed