Suidperl, fce open
Zdenek Lukes
zdenek.lukes na savvy.cz
Pondělí Srpen 12 19:38:20 MEST 2002
On Po, 2002-08-12 at 17:56, Honza Pazdziora wrote:
> On Mon, Aug 12, 2002 at 03:34:00PM +0200, Bc. Zdenek LUKES wrote:
> > Mam takovy problem, delam aplikaci, ktera potrebuje zapisovat urcitedata
> > pod urcitym uzivatelem, k tomu vyuzivam suidperl. Vse mi funguje az na
> > vytvareni novych souboru pres fci open.
> >
> > pokud to spustim tak to hodi hlasku:
> > Insecure dependency in open while running setuid at ./email-sprava.cgi
> > line 287.
>
> Ukazte kod. Neni to tak, ze ta promenna, jejiz obsah pouzivate jako
> jmeno toho souboru, je taint, tedy pochazi z neduveryhodneho zdroje?
Posilam zkraceny kod fce:
sub NewAliases {
my ($cesta) = @_;
my ($error) = 0;
my ($email_name, $aliases_name, $aliases, $soubor);
$aliases_name = param('EMAIL');
$soubor_name = param('ALIAS');
$soubor2 = "$cesta/.qmail-$soubor_name";
open (ALIAS2, ">$soubor2") or $error = 20;
flock (ALIAS2, 2) or $error = 20;
print ALIAS2 "$aliases\n";
flock (ALIAS2, 8);
close (ALIAS2);
}
p.s. parametr cesta se predava fci a do soubor2 se sklada
cesta+nazevsouboru. Kdyz obsem udelam promenou $soubor2 a napisu primo
do ni cestu tak to projde. Problem asi bude s neduverihodnem zdroji, ale
nevim jak bych to presne obesel.
Lukin
Další informace o konferenci Perl