Autorisation incorrecte dans thorsten/phpmyfaq (CVE-2026-46366)
Résumé
Vulnérabilité dans thorsten/phpmyfaq (CVE-2026-46366). Des informations confidentielles peuvent être exposées. Exploitable via faqdata. Atténuation : mise à jour vers 4.1.2 ou plus.
Description d'origine
La description telle que publiée par la source (souvent en anglais).
Summary
The public /solution_id_{id}.html route calls Faq::getIdFromSolutionId() in phpmyfaq/src/phpMyFAQ/Faq.php:1312. That query joins faqdata with faqcategoryrelations solely by solution_id and returns the matching FAQ's id, lang, thema (title), and category_id with no permission filter. An unauthenticated visitor hits the route with a sequential integer and the server 301-redirects to /content////.html, leaking the FAQ's existence, internal id, language, category binding, and title via the redirect's Location header and the redirected page's canonical link, share-to-social URLs, and hidden form fields. The related getFaqBySolutionId() at line 1221 contains an explicit fallback query (added "for tests") that also bypasses the permission filter, widening the blast radius to any callsite that trusts its result.
Details
The sink: getIdFromSolutionId() has no permission filter
phpmyfaq/src/phpMyFAQ/Faq.php:1312:
public function getIdFromSolutionId(int $solutionId): array
{
$query = sprintf(
'SELECT fd.id, fd.lang, fd.thema AS question, fd.content, fcr.category_id
FROM %sfaqdata fd
LEFT JOIN %sfaqcategoryrelations fcr
ON fd.id = fcr.record_id AND fd.lang = fcr.record_lang
WHERE fd.solution_id = %d',
Database::getTablePrefix(),
Database::getTablePrefix(),
$solutionId,
);
// ...
}
No WHERE-clause permission filter, no group/user filter. Ever…
Source: NIST National Vulnerability Database NVD GitHub Advisory
Résumé IA
Rédigé par une IA externe ; il peut contenir des erreurs. Vérifiez la description d'origine et les références ci-dessous avant d'agir.
Une vulnérabilité référencée CVE-2026-46366 a été découverte dans phpmyfaq.
Des attaquants peuvent cibler un point d'entrée spécifique comme faqdata à distance pour détourner le produit.
Des informations confidentielles peuvent être exposées. Score CVSS : 7.5/10.
Action : appliquez le correctif officiel de l'éditeur.
En cas de doute, contactez votre service informatique ou cherchez « phpmyfaq CVE-2026-46366 » sur le site de l'éditeur.
CVE-2026-46366 (phpmyfaq) — CWE-863 / CVSS v3 7.5
Vecteur d'attaque : distant (réseau) / non authentifié / sans interaction utilisateur
Surface d'attaque : faqdata / faqcategoryrelations / solution_id / lang
Versions affectées : <= 4.1.1
Plan : 1) Audit SBOM, 2) Mise à jour staging→prod, 3) Surveillance WAF/proxy sur les endpoints affectés, 4) Recherche d'IOC dans les logs.
Réfs : voir GHSA / avis éditeur / version corrigée liés sur cette page.
phpMyFAQのgetIdFromSolutionId()メソッドにおける情報漏洩の脆弱性です。
phpMyFAQ バージョン4.1.2未満
認証されていない攻撃者が制限されたFAQ項目を列挙し、機密情報を漏洩する可能性があります。
バージョンを4.1.2以上にアップデートしてください。
パッチが提供されるまで、FAQシステムへのアクセス制限を強化することが推奨されます。
ログを確認し、予期しない/solution_id_{id}.htmlエンドポイントへのアクセスを検出します。
Paquets affectés
Références
- advisory nvd.nist.gov
- package github.com
- web github.com
- web vulncheck.com
- web github.com
- web github.com