[sisyphus] Re: Q: perl security, CPAN security

Epiphanov Sergei =?iso-8859-1?q?serpiph_=CE=C1_nikiet=2Eru?=
Вт Июн 28 14:17:26 MSD 2005


В сообщении от 28 Июнь 2005 13:29 Dmitry V. Levin написал:
> > [...] Вы,
> > когда пишите '/bin/cat "file"', не проверяете file на "вшивость". Хотя
> > знаете, что нетекстовый файл может привести к сбою шрифтов консоли.
> > [...]
>
> Это вы не проверяете.  А вот я, например, проверяю.  И знаю ещё несколько
> человек, которые в такой ситуации предпочитают "less -L".

Да? И на каждый набор _руками_ less -L ... Вы вводите что-то вроде

$ newf=`echo "filename" | /bin/sed '...'`; tf=`/bin/file "$newf"|head -n 2`; 
case ... esac; if ... ; then less -L newf; fi

? Да не поверю! Потому что это уже паранойя. Скорее всего наберёте в 
командной строке

vi /etc/httpd/conf/httpd.conf
или
less -L /etc/passwd

без каких-либо проверок. То есть работа со знакомой прогой и со знакомым 
текстом файла. Но Вы будете АБСОЛЮТНО правы, если входные данные непроверены 
(например, у elinks) и здесь я буду только ЗА.

Извините, но с какой стати все прицепились к /bin/cat? Когда мне нужно 
загналь файл в pipe, то вполне могу воспользоваться /bin/cat. При этом я 
знаю, что есть вариант этому:

$ команда <файл

Но я пока не знаю замены для дописывания файла в конец другого, кроме:

$ /bin/cat файл >>файл1

less более громоздкий, dd - надо знать размеры файла, да и не с каждым можно 
будет оптимально работать.

Хорошо. Другой пример: есть системные конфигурационные файлы, которые 
доступны только root (хотя бы из-за паранойи). Их несколько и Вы знаете, 
какие они и что конкретно там надо заменить. Набиваете простенький скрипт, 
который осуществляет правку этих файлов. После этого скрипт отправляете на 
покой или складываете в укромное место. Так теперь ещё и раскапывать, что 
где не работает? И вместо написания строки вроде

perl -e 'команды' /etc/httpd/conf/httpd.conf >/etc/httpd/conf/httpd.conf.new

Придётся городить огромный скрипт.

Мне просто интересно, почему мне нельзя выбирать между обычным и защищённым 
режимами работы perl под root? Ломаем копья из-за 3 (трёх) символов: 
пробела, дефиса и латинской буквы 'T'.

-- 
С уважением, Епифанов Сергей



Подробная информация о списке рассылки Sisyphus