[mdk-re] chroot solution...

AT =?iso-8859-1?q?alexey=5Ftourbin_=CE=C1_mail=2Eru?=
Чт Сен 6 02:28:12 MSD 2001


> Есть библиотеки, которые подключаются не при старте, а позднее, во время
> работы программы. Например, resolver, NSS.

Тогда возникает вопрос. Вот есть какая-нибудь программа:

#include <stdio.h>
#include <unistd.h>

int main() {
	...
	rv = crypt(guess, good);
	...
	if (chroot("/home/www"))
		exit(0);
	else {
		...
		rv = crypt(guess, good);
		...
	}
}

И динамически линкуется:

$ gcc prog.c -o prog -lcrypt

Из какой библиотеки будет вызвана crypt(3) во втором случае? Из той, что в
/lib, или из /home/www/lib?


> Если в chroot'е нет рута, то можно.

Здесь хотелось бы подробнее: что практически означает "в chroot'е нет
рута"? В локальном /etc/passwd нету root'а, владелец процессов под
chroot'ом -- не root...


> Кроме того, могу предложить прочесть статью, где, в частности, обсуждается
> и эта тема: http://altlinux.ru/index.php?module=articles&action=show&artid=5

Спасибо, хорошая статья. Кое-что проясняет. Наиболее интересен поздний
chroot без wrapper'а. То есть программа должна запуститься, прочитать
конфигурационные файлы и сама сделать chroot/setuid. Интерес же, конечно,
в том, что в chroot'е вообще не будет видно ни бинариков, ни
конфигурационных файлов (пример: хакер проник в chroot через www и даже не
может узнать, какой httpd запущен).

При такой модели можно организовать "отсутствие рута в chroot'е"?

Если бы ещё как-нибудь можно было вынести библиотеки (1-ый вопрос)...


PS: в этом листе можно задавать вопросы по RSBAC?

> +-------------------------------------------------------------------------+
> Dmitry V. Levin     mailto://ldv@alt-linux.org
> ALT Linux Team      http://www.altlinux.ru/
> Fandra Project      http://www.fandra.org/
> +-------------------------------------------------------------------------+
> UNIX is user friendly. It's just very selective about who its friends are.

__
AT




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