On 2011.12.05 at 14:34:16 +0400, Evgeny Kapun wrote: > > Первая реакция: #!/usr/bin/perl без -T в чем-то security-related? > > А-А-А!! бежать скорее отсюда! > > > > Но надо будет повнимательнее почитать, это -T туда дописать и вообще. > > В любом случае это лучше нижепоскипанного скрипта. > > Ключ -T нужен, чтобы уменьшить вероятность security-багов ценой того, > что некоторые вещи перестанут работать. Наличие этого ключа > автоматически не сделает программу безопасной, так же как и отсутствие > не сделает её дырявой. В данном конкретном случае этот скрипт не > заработает с -T, поскольку он не рассчитан на это. Если автор не > написал -T, значит, видимо, так и надо. В конце концов, в других
При беглом просмотре текста скрипта не видно, с чего бы ему не работать с -T. Весь ввод из environment все равно старательно пропускается через регекспы. Значит, если где-то не заработает, скорее всего это действительно неаккуратное обращение с untrusted вводом. Кстати, use warnings там тоже не видать. Из чего следует что для автора Perl язык не родной. Человек, который много писал на Perl вещей, имеющих отношение к security обычно -wT пишет на автомате, и только потом задумывается, "а может убрать?" если сильно мешает. Здесь - не должно мешать. Тем более списковым exec автор вполне владеет. Поэтому пока план такой - добавить -wT, добиться чтобы в таком виде работало, и пользоваться. > языках нет аналогичной возможности, но это же не делает все программы > на них автоматически уязвимыми. То что в языке есть такая возможность, а автор ее не использует, свидетельствует о том, что либо автор плохо знает язык, либо вообще небрежно относится к этому скрипту. И то, и другое повышает вероятность уязвимости. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20111205105428.ga20...@wagner.pp.ru