CVE-2026-40186 in apostrophe
Résumé
par VulDB • 20/05/2026
ApostropheCMS est un système de gestion de contenu (CMS) open-source basé sur Node.js. Une régression introduite dans le commit 49d0bb7, incluse dans les versions 2.17.1 du package sanitize-html maintenu par ApostropheCMS, contourne l'application de la liste allowedTags pour le texte contenu dans les éléments nonTextTagsArray (textarea et option). La version 4.28.0 d'ApostropheCMS est affectée en raison de sa dépendance envers la version vulnérable de sanitize-html. Le code situé dans packages/sanitize-html/index.js:569-573 suppose incorrectement que htmlparser2 ne décode pas les entités à l'intérieur de ces éléments et saute l'échappement, mais htmlparser2 10.x décode les entités avant de transmettre le texte à la callback ontext. Par conséquent, le HTML codé sous forme d'entités est décodé par l'analyseur, puis écrit directement dans la sortie sous forme de caractères HTML littéraux, contournant complètement le filtre allowedTags. Un attaquant peut injecter des balises arbitraires, y compris des charges utiles XSS, via n'importe quel élément option ou textarea autorisé en utilisant le codage d'entités. Cela affecte les configurations non par défaut où option ou textarea sont inclus dans allowedTags, ce qui est courant dans les constructeurs de formulaires et les plateformes CMS. Ce problème a été corrigé dans la version 2.17.2 de sanitize-html et la version 4.29.0 d'ApostropheCMS.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.