Entreprise d'experts en Sécurité Informatique : Audits et conseils en cybersécurité
Entreprise française de cybersécurité depuis 2004
☎ 03 60 47 09 81 - info@securiteinfo.com

CMSeeK : l'outil open source pour détecter et auditer plus de 180 CMS


RECHERCHE DE VULNERABILITÉS SITE WEB CMS OUTIL DE HACKING

Quand un site web cache son moteur


Vous êtes face à un site web et vous vous demandez ce qu'il a dans le ventre. WordPress ? Joomla ? Un Drupal un peu fatigué ? Ou bien l'un de ces CMS plus exotiques que personne ne maintient depuis 2014 ? Cette question peut sembler anodine, mais elle est en réalité la toute première étape de n'importe quel audit de sécurité web. Connaître le CMS qui fait tourner une cible, c'est déjà avoir une bonne idée des angles d'attaque possibles, des plugins potentiellement vulnérables et des erreurs de configuration les plus courantes.

Pour répondre à cette question, il existe un outil particulièrement efficace, gratuit et open source : CMSeeK. Développé par Tuhinshubhra (alias r3dhax0r), ce petit bijou en Python 3 a tranquillement passé la barre des 2 500 étoiles sur GitHub et s'est imposé comme un classique de la trousse à outils des pentesters et des auditeurs web.

CMSeeK est une suite open source écrite en Python 3 qui détecte plus de 180 systèmes de gestion de contenu (CMS) et déclenche, pour les plus répandus comme WordPress, Joomla et Drupal, des scans approfondis incluant détection de version, énumération des utilisateurs, des plugins, des thèmes et recherche de vulnérabilités connues.

CMSeeK, qu'est-ce que c'est exactement ?


À première vue, CMSeeK ressemble à un simple détecteur de CMS, à mi-chemin entre WhatWeb et Wappalyzer. Mais il va beaucoup plus loin. Une fois qu'il a identifié le moteur du site, l'outil ne s'arrête pas là : il enclenche une batterie de tests adaptés au CMS détecté, recense les éléments exposés et compile l'ensemble dans un rapport JSON exploitable, parfait pour alimenter d'autres scripts ou un workflow d'audit plus large.

Le projet est publié sous licence GPL-3.0, écrit intégralement en Python 3, et s'appuie sur quelques dépendances classiques : requests, BeautifulSoup, lxml. Il fonctionne sur les systèmes Unix (Linux et macOS), et son intégration dans Kali Linux en fait un outil disponible quasiment partout dans le monde du pentest.

Comment CMSeeK identifie un CMS


La détection ne tient pas du hasard. CMSeeK combine plusieurs sources d'information pour atteindre un excellent taux de précision sur l'identification du moteur.

L'outil commence par interroger les en-têtes HTTP, où certains CMS laissent leur signature (un X-Powered-By, un cookie distinctif, etc.). Il analyse ensuite la fameuse balise generator souvent présente dans le HTML, scrute le code source de la page d'accueil pour y repérer des chemins, des classes CSS ou des scripts caractéristiques, lit le fichier robots.txt à la recherche de répertoires révélateurs, puis effectue quelques vérifications de chemins typiques (le fameux /wp-admin/ de WordPress, par exemple). Cette approche multi-sources réduit considérablement les faux positifs, particulièrement utiles quand vous tombez sur un site qui tente de masquer son identité.

Au-delà de la détection : les scans avancés


Là où CMSeeK devient vraiment intéressant, c'est dans les modules de scan dédiés aux CMS les plus populaires. Trois moteurs se taillent la part du lion.

WordPress passé au crible


WordPress équipant aujourd'hui plus de 40 % des sites web mondiaux, il était logique que CMSeeK lui réserve un traitement de faveur. L'outil identifie la version du moteur, énumère les utilisateurs via trois méthodes différentes (parade aux protections approximatives), liste les plugins installés et leurs versions, fait de même avec les thèmes, vérifie l'exposition du fichier xmlrpc.php, traque les sauvegardes et fichiers de configuration laissés à l'abandon, et croise enfin les versions identifiées avec une base de vulnérabilités connues. En résumé : la majeure partie de ce qu'un auditeur cherche à savoir sur un WordPress lors d'une première reconnaissance.

Joomla, Drupal et les autres


Pour Joomla, le moteur de scan détecte la version exacte du CMS, recherche les fichiers de sauvegarde oubliés, traque les pages d'administration, repère les vulnérabilités connues sur le core, vérifie le listing de répertoires et tente de localiser des fuites de configuration. Drupal n'est pas en reste avec sa propre routine de détection de version. Pour les autres CMS (PrestaShop, Magento, OpenCart, Typo3, Ghost, MediaWiki, etc.), le niveau de profondeur dépend de la configuration du fichier cmss.py, où chaque CMS est défini avec un drapeau "deep scan" qui active ou non l'analyse avancée.

Un système de bruteforce modulaire


CMSeeK embarque également un système de bruteforce modulaire. L'idée est élégante : plutôt que d'imposer un seul moteur, l'outil propose une architecture où vous pouvez brancher vos propres modules d'attaque par force brute, taillés sur mesure pour un CMS donné. Le projet fournit déjà plusieurs modules prêts à l'emploi (WordPress, Joomla, OpenCart, Drupal), et l'ajout d'un module personnalisé se résume à déposer un fichier Python dans le répertoire cmsbrute/ en respectant deux commentaires de balisage. Une fois le cache reconstruit, votre nouveau module apparaît dans le menu interactif. Simple, propre, efficace.

Ce mécanisme est précieux dans un contexte d'audit où vous testez la robustesse des mots de passe administrateurs avec l'accord du client. Évidemment, ce type de fonctionnalité est à manipuler avec discernement et autorisation préalable.

Installation et prise en main


La mise en route est d'une simplicité déconcertante. Trois commandes suffisent :

git clone https://github.com/Tuhinshubhra/CMSeeK
cd CMSeeK
pip3 install -r requirements.txt


Une fois installé, vous pouvez lancer CMSeeK en mode interactif avec python3 cmseek.py, qui ouvre un menu où vous saisirez votre cible et choisirez le type de scan. Pour les habitués de la ligne de commande, un mode direct est également disponible :

python3 cmseek.py -u https://exemple.com

L'option -l permet de fournir une liste de cibles à scanner en série, --random-agent randomise le user-agent, --light-scan se limite à la détection sans scan approfondi et --batch automatise complètement le processus pour qu'aucune interaction utilisateur ne soit nécessaire. Une option d'auto-mise à jour est disponible via python3 cmseek.py --update, à condition d'avoir git installé.

Les résultats de chaque scan sont stockés dans un dossier Result/<cible>/ sous forme d'un fichier cms.json contenant l'intégralité des informations collectées. C'est ce format JSON qui rend CMSeeK particulièrement appréciable pour l'intégrer dans une chaîne d'outils plus large.

Pourquoi CMSeeK mérite sa place dans votre boîte à outils


Le premier atout de CMSeeK, c'est sa polyvalence. Là où la plupart des outils se spécialisent sur un seul moteur (WPScan pour WordPress, JoomScan pour Joomla, etc.), CMSeeK couvre l'ensemble du paysage des CMS en un seul utilitaire, avec une qualité d'analyse honorable pour les principaux moteurs. Pour un premier passage de reconnaissance, c'est un gain de temps considérable.

Le second atout, c'est la lisibilité de la sortie. L'interface en ligne de commande est claire, colorée, organisée par catégories, et le rapport JSON facilite la suite des opérations. Ajoutez à cela la légèreté de l'outil (un simple script Python sans dépendance lourde) et sa publication sous licence libre, et vous obtenez un compagnon idéal pour les audits rapides ou pour alimenter une plateforme d'analyse automatisée.

Bref, si vous touchez de près ou de loin à l'audit web, CMSeeK est l'un de ces outils qu'il faut connaître. Léger, lisible, complet pour son périmètre : difficile de demander mieux pour un projet open source.

Avertissement


L'utilisation de ce programme ne peut se faire que dans le cadre légal d'un audit de vulnérabilités, basé sur le consentement mutuel. Il est de la responsabilité de l'utilisateur final de ne pas utiliser ce programme dans un autre cadre. SecuriteInfo.com n'assume aucune responsabilité et n'est pas responsable de toute mauvaise utilisation ou de tout dommage causé par ce programme.



Quelques suggestions sur le sujet des exploits et vulnérabilités


Vous avez aimé cet article ? Voici quelques suggestions qui devraient vous plaire :

Tags


RECHERCHE DE VULNERABILITÉS SITE WEB CMS OUTIL DE HACKING


Inscription à notre lettre d'information


Inscrivez-vous à notre lettre d'information pour vous tenir au courant de nos actualités et de nos dernières trouvailles.


SecuriteInfo.com est une entreprise française de cybersécurité. Nous proposons différentes solutions matérielles et prestations de services permettant de sécuriser les données des Systèmes d'Information d'entreprises ou de collectivités. Notre périmètre d'intervention couvre l'intégralité de votre système d'information : Sécurité périmétrique, réseaux, accès distants, VPN, solutions anti-spam et anti-malwares, différents audits réseaux et systèmes, vérification de la politique de sécurité, hébergement sécurisé ...
Facebook SecuriteInfo.com
Twitter de SecuriteInfo.com
Github de SecuriteInfo.com
Calculs scientifiques distribués contre les maladies, équipe SecuriteInfo.com
Depuis 2015, SecuriteInfo.com soumet et analyse des malwaressur VirusTotal
Depuis 2020, SecuriteInfo.com participe à la lutte antivirale avec nos amis suisses de Malware Baazar (Abuse.ch)
© 2000-2026 - Tous droits réservés SecuriteInfo.com