BookStack, le wiki open source et auto-hébergé qui organise la documentation en Étagères, Livres, Chapitres et Pages, a reçu le 24 août 2026 une mise à jour dédiée à la sécurité : la version 26.05.4. Ce n’est pas une version de fonctionnalités. Elle corrige quatre problèmes de sécurité, dont le plus grave est une faille critique d’exécution de code à distance (RCE) accessible via la fonction d’import de contenu de la plateforme.
Le problème principal, référencé CVE-2026-82450, touche les instances où les droits d’import sont distribués trop largement. Un utilisateur authentifié disposant à la fois des permissions « Import Content » et « Create Books » peut téléverser un fichier ZIP spécialement conçu, déguisé en image de couverture de livre. Ce fichier est en réalité un polyglotte PHP : un seul et même fichier valide à la fois comme image et comme script PHP exécutable. Cette double nature suffit à contourner les contrôles de validation de BookStack lors de l’import, permettant à l’attaquant d’exécuter du code arbitraire sur le serveur.
La surface d’attaque reste plus étroite qu’une RCE non authentifiée : il faut un compte connecté avec deux permissions précises, pas un accès ouvert depuis internet. Reste que beaucoup de wikis d’équipe accordent « Import Content » et « Create Books » à davantage de monde qu’ils ne donneraient un accès serveur, ce qui explique sans doute pourquoi ce correctif est sorti en urgence plutôt que d’attendre la prochaine mise à jour fonctionnelle.
Que corrige aussi la version 26.05.4 ?
Trois autres problèmes ont été corrigés en même temps que la faille RCE :
- Un fichier ZIP piégé, déguisé en couverture de livre, pouvait déclencher une exécution de code à distance (CVE-2026-82450) lors de l’import, pour les comptes disposant à la fois des permissions « Import Content » et « Create Books ».
- Les points d’accès derrière l’outil de dessin intégré de BookStack pouvaient être manipulés pour provoquer des scénarios de cross-site scripting (XSS).
- Des points d’accès prévus pour les pages en brouillon pouvaient être détournés pour modifier des pages qui n’étaient pas des brouillons, même sans droit d’édition sur ces pages.
- Les pages en brouillon créées par d’autres utilisateurs pouvaient apparaître dans certains résultats de recherche, exposant un contenu censé rester privé pour son auteur.
Pris séparément, aucun de ces quatre points n’a de quoi affoler. Ensemble, ils franchissent trois lignes de confiance différentes : ce qu’un importeur peut exécuter sur le serveur, ce que le navigateur d’un visiteur peut être piégé à exécuter, et ce qu’un utilisateur aux droits restreints peut lire ou modifier alors qu’il ne le devrait pas. C’est un éventail de problèmes raisonnable à regrouper dans un seul cycle de correctifs.
Impossible de mettre à jour tout de suite ? Il existe une solution provisoire : retirer les permissions « Import Content » et « Create Books » à tout compte qui n’en a pas strictement besoin des deux à la fois. Le système de permissions de BookStack est assez granulaire pour le faire par rôle, ce qui referme la combinaison précise dont dépend CVE-2026-82450, même avant d’appliquer le correctif. Ce n’est pas un substitut à la mise à jour, juste un moyen de gagner un jour ou deux si votre fenêtre de maintenance ne tombe pas au bon moment.
Qui doit mettre à jour, et avec quelle urgence ?
La recommandation de l’équipe BookStack est sans détour : mettez à jour, point final. Mais traitez cela en urgence si des utilisateurs non fiables ont un accès général à votre instance, en particulier un accès en édition. Dans ce cas, les mainteneurs conseillent aussi de vérifier vos dossiers d’upload d’images à la recherche de fichiers qui ne sont pas réellement des images. C’est exactement le genre de trace que laisserait une tentative d’exploitation de la faille d’import ZIP.
Pour une petite instance homelab avec une poignée d’éditeurs connus et de confiance, le risque est plus faible : vous n’accordez vraisemblablement pas « Import Content » et « Create Books » à des inconnus. Mais la mise à jour est gratuite, elle ne semble rien casser, et il n’y a aucune bonne raison de laisser ouverte une RCE connue, aussi étroites que soient les conditions pour la déclencher. L’image Docker communautaire linuxserver/bookstack est le déploiement le plus courant ; récupérer le nouveau tag et redémarrer le conteneur devrait suffire, même s’il vaut la peine de vérifier votre propre fichier compose pour tout élément personnalisé.
Pour en savoir plus sur la licence de BookStack, sa dépendance à MySQL, et comment il se compare à Wiki.js et Confluence, consultez notre fiche BookStack.
Tous les détails et le changelog complet se trouvent dans l’annonce officielle de BookStack et sur la page des releases GitHub pour la v26.05.4.