From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on sa.int.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-1.6 required=5.0 tests=AWL,BAYES_00, DNS_FROM_OPENWHOIS,SPF_PASS autolearn=no version=3.2.5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:received:date:from:to:subject :message-id:mail-followup-to:references:mime-version:content-type :content-disposition:content-transfer-encoding:in-reply-to :user-agent; bh=Fj5wuyzaRp7sXYif+Qrbuk0c8rpEedAiVp0Ur1y0aoU=; b=p30v0cfBN63Dsc4f+kZssk9YXMC3/d2eExKD7zOY4Kj52s1ZSPZw/sdyQsyKPII808 89sG1AAXzgdsMxlfPqniBZmn0oR87PzKeGxkskTHFHUxNj2xvF+GQcRyDkH+O3NZ5TYG orq7wd9IsVVNLY115qbhePt4Pi/Z0OkDPPEW0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=date:from:to:subject:message-id:mail-followup-to:references :mime-version:content-type:content-disposition :content-transfer-encoding:in-reply-to:user-agent; b=Hb3Rtm5Rsn9L1jg7wzyyuzzhn9UOjFMgwn1peU8Siu0U+KsrFAeNSPCtXdqdb4vZQ5 UC2JUIna7MHxWlpuztisbM9UclLi/LCLYwHB3aGnBdKlCS4+MNeqg3sat4HDFwqXja0g cigRCuTwD5emcDKx5oY2/4ddZagyxeZo9VswI= Date: Wed, 13 Oct 2010 20:18:46 +0400 From: Vladimir Lettiev To: ALT Linux Team development discussions Message-ID: <20101013161846.GB3239@truecrux.org> Mail-Followup-To: ALT Linux Team development discussions References: <20101009230637.GA1548@altlinux.org> <20101010121438.GA30220@altlinux.org> <20101011135706.GA2729@truecrux.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.5.20 (2009-06-14) Subject: Re: [devel] =?utf-8?b?0YHQvtC30LTQsNC90LjQtSDQodGC0LDQsdC40LvRjNC9?= =?utf-8?b?0L7Qs9C+INCx0YDQsNC90YfQsCDQuCDQndCw0YbQuNC+0L3QsNC70Yw=?= =?utf-8?b?0L3QvtC5INCe0KE=?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Oct 2010 16:19:04 -0000 Archived-At: List-Archive: List-Post: On Wed, Oct 13, 2010 at 02:00:23PM +0300, Victor Forsiuk wrote: > > Perldoc _может_ работать от root, просто потребуется указать ключ -t > > ( можно даже прописать alias perldoc='perldoc -t' ) > > > > А теперь поместите себя, пожалуйста, в шкуру пользователя дистрибутива ALT. > Даже суперправильного, который читает маны (oops, от такой привычки ему > нужно отвыкать :). Он запускает perldoc, получает страшный матюк с > нехорошими словами Error и Insecure. Логинится юзером, запускает *perldoc > perldoc*. Вы видите в описании ключа -t текст, подсказывающий человеку, что > это решение для запуска от root. Скорее он дойдет до секции SECURITY и > поймет, что всё плохо: perldoc ... is known to have security issues. perldoc при запуске от root скидывает привилегии до nobody, при этом автоматически включается tainted режим, что запрещает использовать в вызовах system(), exec() или `` непроверенные данные, полученные извне. Именно из-за tainted режима происходит ошибка вызова perldoc, поскольку где-то в недрах ToMan.pm происходит запуск шела с коммандой, которая сформирована из tainted переменных. Об этом собственно и говорит примечание в документации по perldoc. С помощью ключа -t можно обойти использование модуля ToMan.pm и получить вывод документации. На самом деле это вопрос не праздный, почему в документации perldoc нам прямым текстом сообщается: perldoc does not run properly tainted, and is known to have security issues Где информация об известных уязвимостях в perldoc? Если они есть, то почему до сих пор не исправлены? Насколько я успел раскопать, перед релизом perl 5.6.0 в 2000 году Tom Christiansen провёл аудит кода perldoc и сделал множество исправлений безопасности, в том числе реализовал сбрасывание привелегий для случая запуска от root. Также ввёл опцию -U для ССЗБ (опцию правда позже убрали): -U Run in insecure mode (superuser only) Он же и написал то грозное сообщение о проблемах безопасности, предупреждая, что запуск perldoc от root на модули из непроверенных источников - это опасно. Если посмотреть в багтрак для perldoc, там действительно были такие проблемы, например, создание временных файлов в каталоге /tmp/.perldoc, это потом "исправили" добавив к имени текущий pid процесса... После исправлений Tom Christiansen никаких проблем с безопасностью вроде бы не регистрировали. -- Vladimir Lettiev aka crux ✉ theCrux@gmail.com