perl system()

Ladislav Vaiz ziav na adela.fel.zcu.cz
Úterý Duben 2 10:19:53 CEST 2002


> kdyz spoustim perlovksky script (prohlizecem), majitel je root,
> skupina root, spousteni maji povoleno vsichni, jak mohu ve
> scriptu provest spusteni neceho, na co ma pravo pouze root, napr.
> vytvoreni adr. nekde, kam jini nemaji pravo - system("mkdir
> /mujadresar");

Zjednodusena verze skriptu:
Poznamky:

-suidperl musi byt suidnuty.

-Funkce system "mkdir" vam asi neprojde, zrejme bude hlasit cosi
 o nebezpecnem nastaveni $PATH. Proto musite pouzit exec s vice parametry.

-Pred exec bude mozna ve vasem pripade vhodne pouzit fork.

#!/usr/bin/suidperl
exec ("/usr/bin/cdrecord","-v","dev=6,0","-speed","8",$ARGV[0]);

			La'd"a

__... ...__  _.. .  ___ _._ .____ __.. .. ._
Windows 95, (n): 32 bit extension and a graphical shell for a 16 bit patch
to an 8 bit operating system originally coded for a 4 bit microprocessor,
written by a 2 bit company that can't stand 1 bit of competition.



Další informace o konferenci Linux