|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Dmitry Koteroff 2:5020/400 13 Jul 2002 19:24:22 To : Andrey Sapozhnikov Subject : Re: еще раз об экспорте [Was: Открытое письмо...] --------------------------------------------------------------------------------
Здравствуйте, Andrey.
12 июля 2002 года, пятница, 09:23. Вы написали:
> скрипт. Hо вот тот же самый код без первых двух строк:
> use CGI::WebIn (1);
> foreach (qw(/dir/a /dir/b /dir/c)) {
> push @cmd, $_;
> }
> system 'ls', '-l', @cmd;
> содержит дыру. Поскольку @cmd уже может быть экспортирован
> из WebIn и заполнен (к примеру, содержать враждебную команду
> в обратных апострофах).
А что, если сделать для всех экспортрованных переменных tie с запрещенной
функцией PUSH (чтобы сразу вызывался die) и вообще - с запретом любого
изменения, кроме как "целикового"?.. Это ведь заткнет дыру (правда, strict
все же работать не будет).
--
С уважением,
Дмитрий Котеров (dk@dklab.ru), ведущий программист (http://www.dklab.ru).
Пишу на "Вы", потому что ценю в людях вежливость.
--- ifmail v.2.15dev5
* Origin: Demos online service (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/6577b72a0820.html, оценка из 5, голосов 10
|