Le 12 octobre 2026, NVD a publié deux vulnérabilités critiques qui reposent sur la même erreur de conception : des identifiants qu'un attaquant peut connaître ou reconstituer. Pas de faille mémoire, pas de chaîne complexe : il suffit de se connecter.
- Rapyd Admin, un panneau d'administration pour Laravel, crée un compte super-admin aux identifiants documentés, et le recrée silencieusement.
- Grav Login OAuth, le plugin de connexion OAuth du CMS Grav, crée des comptes locaux dont le mot de passe se déduit d'une donnée non secrète.
Bonne nouvelle : dans les deux cas, NVD cite une version corrigée.
| CVE-2026-109566 | CVE-2026-109321 | |
|---|---|---|
| Produit | Rapyd Admin | Grav Login OAuth (grav-plugin-login-oauth) |
| CVSS 3.1 | 9.8 (CRITICAL) | 9.1 (CRITICAL) |
| Vecteur | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| Publication NVD | 2026-10-12 | 2026-10-12 |
| Concerné selon NVD | de 9.0.0 à avant 9.20.0 | avant 1.4.3 |
| Corrigé en | 9.20.0 | 1.4.3 |
| CISA KEV | non (à la date de rédaction) | non (à la date de rédaction) |
Rapyd Admin — CVE-2026-109566 : le super-admin qui revient
The account is seeded by the setup installer and silently re-created on every rpd:make run
L'installeur de Rapyd Admin sème en base un compte super-administrateur avec des identifiants par défaut documentés. Classique, et dangereux si on oublie de le supprimer. Mais le détail qui rend cette CVE pire que d'habitude, c'est la seconde moitié de la phrase : le compte est recréé à chaque exécution de la commande de génération rpd:make.
Concrètement, tu peux avoir supprimé ce compte après l'installation, puis le voir réapparaître la prochaine fois qu'un développeur génère un module. Une suppression manuelle ne protège donc pas durablement.
Le compte est un super-admin global : selon NVD, il contourne l'autorisation par enregistrement et le cloisonnement entre tenants. Sur une application multi-clients, c'est l'accès à toutes les données de tous les clients.
Mesures spécifiques :
- Mettre à jour vers 9.20.0 ou plus récent.
- Vérifier la table des utilisateurs après la mise à jour, et après chaque exécution des commandes de génération : aucun compte super-admin ne doit exister en dehors de ceux que tu as créés et nommés.
- Faire tourner les secrets de l'application (clé
APP_KEY, jetons d'API, identifiants de base) si le compte par défaut a pu être utilisé.
Grav Login OAuth — CVE-2026-109321 : un mot de passe qui n'est pas secret
Unauthenticated remote attackers who learn or guess a provider identifier can reproduce these credentials and log in
Quand un utilisateur se connecte via un fournisseur OAuth (Google, GitHub…), le plugin crée un utilisateur Grav local. Le problème, d'après NVD, tient en trois points :
- le nom d'utilisateur suit un format déterministe ;
- le mot de passe est dérivé de l'identifiant du fournisseur, sans aucun secret ;
- la connexion par mot de passe reste active pour ces comptes.
Or l'identifiant d'un compte chez un fournisseur OAuth n'est pas un secret : il peut être visible publiquement ou deviné. Quiconque le connaît peut reconstituer les identifiants locaux et se connecter par le formulaire classique, sans passer par OAuth. Si le compte est administrateur, c'est le contrôle du site.
Le vecteur NVD exclut l'impact sur la disponibilité (A:N), d'où le 9.1, mais confidentialité et intégrité sont totales.
Mesures spécifiques :
- Mettre à jour le plugin vers 1.4.3 ou plus récent.
- Réinitialiser les mots de passe de tous les comptes créés par le plugin, ou désactiver leur connexion par mot de passe, selon ce que propose la version corrigée. La mise à jour du code ne change pas forcément les comptes déjà créés : vérifie-le dans l'avis du projet.
- Revoir les privilèges : un compte créé par OAuth ne devrait pas être administrateur par défaut.
Détection
- Rapyd Admin : connexions réussies du compte par défaut dans les journaux d'authentification ; compte super-admin présent en base sans que tu l'aies créé ; actions transverses entre tenants.
- Grav : connexions par mot de passe sur des comptes censés n'utiliser qu'OAuth ; connexions admin depuis des adresses inhabituelles ; pages, plugins ou utilisateurs modifiés sans raison dans
user/. - Pour les deux : nouveaux comptes, changements de rôle, fichiers PHP récents dans l'arborescence web.
Mitigation générale
- Appliquer les versions corrigées citées par NVD : 9.20.0 pour Rapyd Admin, 1.4.3 pour le plugin Grav.
- Auditer les comptes existants : la mise à jour ferme la porte, elle ne retire pas forcément un compte déjà créé.
- Restreindre les interfaces d'administration à un réseau d'administration ou derrière un VPN.
- En cas d'accès suspect : traiter l'application comme compromise, faire tourner ses secrets et vérifier l'intégrité des fichiers.
Pourquoi surveiller en continu vos composants applicatifs
Un plugin CMS ou un package de back-office n'apparaît pas dans un inventaire de serveurs. Pourtant, une seule ligne de son code suffit à ouvrir l'administration complète. Suivre les versions des composants, pas seulement des machines, c'est ce qui permet de voir ces CVE à temps.
Avec cveo.tech, inventorie tes CMS, plugins et frameworks avec leur version et reçois une alerte dès qu'une CVE critique les concerne.