
Injection de commande non authentifiée dans Cacti <= 1.2.22
Ce dépôt contient une preuve de concept (PoC) pour la vulnérabilité CVE-2022-46169, qui permet à un attaquant de contourner l'authentification et d'exécuter du code arbitraire à distance sur le système affecté. Cette vulnérabilité concerne Cacti, version 1.2.22, publiée le 18 août 2022.
La vulnérabilité survient car remote_agent.php possède une fonction qui récupère l'adresse IP et vérifie une entrée dans la table poller. Si une entrée est trouvée, la fonction renvoie true et le client est autorisé. L'une des actions s'appelle polldata, qui récupère quelques paramètres de requête. Si l'action d'un poller_item est égale à POLLER_ACTION_SCRIPT_PHP, cela peut permettre à l'attaquant d'exploiter une vulnérabilité d'injection de commandes via proc_open.
La PoC montre comment un attaquant peut exploiter cette vulnérabilité pour contourner l'authentification et exécuter du code arbitraire à distance sur le système affecté.
Assurez-vous que la valeur de X-Forwarded-For se trouve dans la table poller
Vous pouvez modifier la payload
python3 cacti.py
Cette PoC est destinée uniquement à des fins éducatives et de test. L'utilisation de cette PoC sur un système ou un réseau sans autorisation explicite du propriétaire du système est illégale et peut entraîner des poursuites. L'auteur décline toute responsabilité pour tout dommage causé par l'utilisation ou la mauvaise utilisation de cette PoC. Utilisez-la à vos propres risques.