
Conexión simple de socket en Python para probar si Exim es vulnerable a CVE-2019-10149. El payload simplemente toca un archivo en /tmp/eximrce.
Conexión simple de socket Python para probar si exim es vulnerable a CVE-2019-10149. El payload simplemente toca un archivo en /root/lweximtest. La salida será lenta dependiendo de la respuesta del servidor y de no saber cómo usar correctamente el módulo socket de Python. Me encantaría una lección sobre cómo acelerarlo. Solo probado en cajas cPanel.
Ejecutar localmente en el servidor sospechoso. Esto verifica indicios de compromiso.
curl -s https://raw.githubusercontent.com/cowbe0x004/eximrce-CVE-2019-10149/master/eximioc.sh |bash
Ejecutar de forma remota. Probando ejecución remota de código.
git clone https://github.com/cowbe0x004/eximrce-CVE-2019-10149
cd eximrce-CVE-2019-10149
python eximrce.py <HOST> <PORT>
Si /root/lweximtest existe en el servidor, es posible la ejecución remota de código.
Si no puede actualizar exim, al menos ponga esta ACL en exim.conf para que ${run{ no pueda ejecutarse.
## 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