
Simple connexion socket python pour tester si exim est vulnérable à CVE-2019-10149. Le payload exécute simplement touch sur un fichier dans /tmp/eximrce.
Connexion simple en socket Python pour tester si exim est vulnérable à CVE-2019-10149. Le payload crée simplement un fichier dans /root/lweximtest. La sortie sera lente selon la réponse du serveur et ne sait pas comment utiliser correctement le module socket de Python. J'adorerais une leçon sur comment l'accélérer. Testé uniquement sur des boîtes cPanel.
Exécution locale sur un serveur suspecté. Cela vérifie une indication de compromission.
curl -s https://raw.githubusercontent.com/cowbe0x004/eximrce-CVE-2019-10149/master/eximioc.sh |bash
Exécution à distance. Test d'exécution de code à distance.
git clone https://github.com/cowbe0x004/eximrce-CVE-2019-10149
cd eximrce-CVE-2019-10149
python eximrce.py <HOST> <PORT>
Si /root/lweximtest existe sur le serveur, l'exécution de code à distance est possible.
Si vous ne pouvez pas mettre à jour exim, au moins ajoutez cette ACL dans exim.conf pour que ${run{ ne puisse pas être exécuté.
## change
acl_smtp_rcpt = acl_smtp_rcpt
## to
acl_smtp_rcpt = acl_check_rcpt
## after "begin acl"
acl_check_rcpt:
deny message = Restricted characters in address
domains = +local_domains
local_parts = ^[.] : ^.*[@%!/|] : ^.*\N\${run{\N.*}}
deny message = Restricted characters in address
domains = !+local_domains
local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./ : ^.*\N\${run{\N.*}}
accept