[BASH] Cambiar password de usuario desde cgi apache

Hola a todos, estoy intentando cambiar la password de un usuario de linux desde una web.

Apache tiene habilitado los cgi para archivos .sh

El codigo

tmpLogin="usertest";
tmpPass1="mipasswordnueva"

`echo -e "${tmpPass1}\n${tmpPass1}" | sudo passwd $tmpLogin`


Imagen


Me da un error, os copio el link a Stack Overflow

http://stackoverflow.com/questions/2813 ... rom-apache
el usuaro httpd (o quien corra apache), no tiene permisos en /etc/sudoers para ejecutar sudo sin clave.

Ahora, no es para nada buena idea esto desde el punto de vista de la seguridad eh. Y parsea el GET/POST que te llegue del user, porque como te llegue un kk | sudo rm -rf / a tmpLogin y lo pases tal cual al codigo...
Hola, gracias por contestar.

El usuario apache tiene permisos sudoers (se puede ver en enlace de stackoverflow).

Respecto a lo de parsear, es la intencion, pero como de momento me fallaba esto, pues estoy mas enfocado en ello.
Actualizado!

Zokormazo escribió:El link da un 404 xD
Por probar, puedes probar a cambiarle la shell al usuario de apache por bash en vez de noshell. Pero es una horrible idea por parte de la seguridad xD
5 respuestas