L'interface web de Cacti se trouve sous /cacti/ et expose le produit et la version dans la page de connexion, le pied de page et le CHANGELOG fourni. La version est le fait décisif, car les vulnérabilités d'injection de commandes et d'injection SQL de Cacti, y compris celles non authentifiées, sont spécifiques à des builds particuliers. Lire d'abord la version exacte vous indique quelle chaîne d'exploitation s'applique et si une voie d'exécution de code à distance non authentifiée (telle que celle dans la gestion de l'agent distant) est présente sur cette instance.
curl -sk https://<target>/cacti/ | grep -ioE 'Version [0-9.]+'
curl -sk https://<target>/cacti/CHANGELOG | head # often readable, exact version
curl -sk https://<target>/cacti/include/cacti_version # version file in some builds
Notes d'exploitation#
- La version correspond directement aux exploits connus applicables ; les bugs de RCE de Cacti sont spécifiques à la version, identifiez-la donc précisément (le
CHANGELOGou le fichier de version la donne exactement). - Déterminez si une voie non authentifiée s'applique à ce build (certaines failles d'injection de commandes ne nécessitent aucune connexion), ce qui change le besoin d'identifiants au préalable.
- Le chemin
/cacti/et le fichierCHANGELOG/version lisible rendent l'identification facile et non authentifiée. - Orientez vers les chaînes d'exploitation ou, avec un accès, vers la récolte d'identifiants.