Description
phpMyFAQ before 4.1.5 applies inconsistent active=yes and publication-date filtering across its public FAQ API endpoints, allowing unauthenticated attackers to retrieve inactive (draft or review-only) FAQ content. Specifically, GET /api/v3.1/faq/{categoryId}/{faqId} returns the inactive FAQ title and full answer, while GET /api/v3.1/faqs/tags/{tagId} and GET /api/v4.0/faqs/tags/{tagId} return the inactive FAQ title and answer preview, disclosing non-public content.
Problem types
Exposure of Sensitive Information to an Unauthorized Actor
Product status
4.1.0 (semver) before 4.1.5
4.1.5 (semver)
Credits
YHalo-wyh
References
github.com/...pMyFAQ/security/advisories/GHSA-mf8r-wm2w-f8c5
github.com/...pMyFAQ/security/advisories/GHSA-mf8r-wm2w-f8c5 (GitHub Security Advisory (GHSA-mf8r-wm2w-f8c5))
www.vulncheck.com/...ve-faq-content-via-public-api-endpoints (VulnCheck Advisory: phpMyFAQ - Information Disclosure of Inactive FAQ Content via Public API Endpoints)