sslug-teknik team mailing list archive
-
sslug-teknik team
-
Mailing list archive
-
Message #13673
Re: Skift af systempassword fra www
On Fri, 17 Sep 1999, Kristian Vilmann wrote:
> >Jeg vil gerne have et CGI/PHP script der ændrer systempasswordet.
> >Der skal simpelthen være 4 felter i en form: "Username", "Password", "New
> >password" og "Retype new password".
> >Hvad gør jeg????
> -Din webserver skal kunne skifte password for en vilkårligbruger.
> -Din webserver kører som en selvstændig bruger, som regel nobody, eller
> wwwuser.
> - For at kunne skifte password for bruger XXX skal webserveren altså være
> i stand til at udføre kommandoen "passwd" som bruger XXX.
>
> Det tror jeg ikke du kan få lov til at gøre i et script. Jeg har ikke
> prøvet,
Tjoh, scriptet skal bare være SUID for at virke (og skal altså køre
ekstern eller skal bruge et ekstern program til at køre). Linux
understøtter ikke SUID på scripts, men script-fortolkeren som fx Perl kan
gøre det.
I mit program verificerer jeg det gamle password ved at læse i /etc/shadow
selv. Det ny password sættes ved hjælp af programmet chpasswd, som kan
ændre passwords for flere bruger ad gangen.
chpasswd tager sig også af praktiske ting som at låse /etc/shadow filen
osv.
Man skal selvfølgelig passe meget meget på når man har et CGI-script der
kører som root! Det er heldigvis sværere at lave buffer-overflow i Perl
end det er i C, og desuden har Perl en praktisk "taint" mode som gør det
lettere at skrive sikrere programmer.
--
==============================================================================
Erwin Andreasen Herlev, Denmark <erw@xxxxxx> UNIX System Programmer
<URL:http://www.andreasen.org> <*> Goodbye, Richard!
==============================================================================
References