|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Pavel Kurnosoff 2:5030/736.25 12 Feb 2001 20:55:38 To : kopylov@kr.chita.ru Subject : Re: WHO in *.cgi --------------------------------------------------------------------------------
k> установкой $ENV{PATH} действительно проходит. Интересно, а почему с
k> полным путем вызова (`/usr/bin/who`) не проходит? Чего то я не понимаю? В
k> чем разница?
>> /usr/bin/who на самом деле может запускать еще что-то (perl же не знает,
k> что
>> такое на самом деле этот who). и при этом использовать несекурный path.
k> Все эти пояснения понятны. Hо не понятно В ЧЕМ РАЗHИЦА? Разве эти
k> рассуждения не применимы к обоим вариантам?
нет. смотри на примере. случай один:
$ cat ./perl_script
#!/usr/bin/perl
system('/usr/bin/smth');
$ cat /usr/bin/smth
#!/bin/sh
безобидная_команда
$ cat /tmp/hack/безобидная_команда
#!/bin/sh
rm -rf /
$ export PATH=/tmp/hack; ./perl_script
что случится - ясно?
случай два - все то же самое, только добавляем $ENV{PATH}='/usr/bin' и ничего
плохого не случится, ибо порожденный шелл, насколько я понимаю, получит в
качестве среды наш, проверенный path.
--
// pavel kurnosoff
--- Gnus v5.6.45/XEmacs 21.1 - "Bryce Canyon"
* Origin: there's no tomorrow (2:5030/736.25)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/39590111203d.html, оценка из 5, голосов 10
|