On Thu, Feb 28, 2002 at 07:01:38PM +0300, Khimenko Victor wrote:
> On Thu, 28 Feb 2002, Eugene B. Berdnikov wrote:
> > > Вот пример механизма
> > > - автор spy.cgi идет (по http) на supersecret/.... и смотрит там Realm
> > > - и выдает, соответственно, такой же.
> >
> > Мысль, конечно, интересная, хотя надо суметь заманить уже авторизованного
> > юзера на свою страничку, да потом подсунуть ему nph-скрипт, выдающий 401...
> > Хотя в принципе реализуемо.
>
> Да НИЧЕГО не нужно. То есть ВООБЩЕ. Netscape и MS IE, если их однажды
> /supersecret/ попросил авторизоваться будут выдвать ВСЕ пароли на /~someuser/
> даже если тот ВООБЩЕ не запрашивает авторизацию ! Это я сглупил про realm'ы
Не знаю насчет MSIE, но старые нетскейпы в районе 4.xx совершенно точно
ТАК себя не вели (я делал некоторые эксперименты с перекрывающимися
realm'ами). Netscape запоминает realm по директорной части URI посланного
запроса, все точно в соответствии со стандартом. Так что для /~someuser/
нетскейп никакой авторизации просто так не выдаст.
> все на самом деле куда хуже (или лучше - смотря с какой стороны смотреть :-)
> Все просто: если Netscape не будет этого делать, то ему придется на каждую
> защищенную страничку посылать два запроса (один - без пароли и после
> получения отлупа - второй уже с паролем), что замедлит процесс просмотра и
> заставит тупого клиента обратится к продукции конкурента.
Вовсе нет. Пароль выдается для лишь для тех документов, которые попадут
в дерево /supersecret/..., а не для всего сайта.
И когда нетскейпа попросят пароль с тем же realm'ом для другого поддерева,
он это поддерево запомнит отдельно - так у меня получалось. И хотя я
находил у нетскейпа глюки при выдаче 401 на честно поданный пароль, это
никак не отменяет вывода, что нетскейп ведет себя правильно.
> > А меня посетила такая мысль: через ptrace(2) во многих юниксах можно
> > получить все данные, которые передает клиент - для этого достаточно,
> > чтобы uid, под которым выполняются cgi-ные скипты, совпадал с uid'ами
> > апачевых дочек.
> >
> > Так что это защита от "честных воров" получается? :)
>
> Это ДРУГАЯ атака. И от нее тоже можно закрыться (например выключив ptrace
> вообще). Но:
> 1. Она сложнее реализуема...
Ну да. Это прямая атака, ее можно произвести там, где даже xterm из cgi-ки
не запустишь. А заманить юзера на свою страничку еще суметь надо. :)
--
Eugene Berdnikov
=============================================================================
= Apache-Talk@lists.lexa.ru mailing list =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =