Forum Webscript.Ru

Разное => Флейм => Тема начата: vicky2001 от 29 Ноября 2002, 00:52:06

Название: Защита файлов и авторизация
Отправлено: vicky2001 от 29 Ноября 2002, 00:52:06
Всем привет!

У меня вопрос следующего плана:

Есть сайт. На нем реализован простенький Content-Manager с доступом через броузер - позволяет публиковать новости, админить каталог и пр. Все это удовольствие защищено через .htaccess и локальный (для сайта, ессесено) .htpasswd.

К этому менеджеру нужно прикрутить зону с авторизацией для клиентов, где планируется разместить 2 файловых архива.

Авторизация как таковая и сами механизмы подгрузки и скачки файлов проблем не вызывают. Проблема вот в чем - файлы должны лежать не в БД, а просто так "в папке;))" и файловый скрипт по сути должен быть редиректом на них.

Как их защищать, если умный юзер в лоб пропишет путь?

Если авторизовываться через .htaccess и .htpasswd, то тот же самый умный юзер может случаем влезть в менеджер и погадить инфу на сайте.

Чего бы мне хотелось?! При обращении к файлу в закрытой папке вызывается скрипт проверки доступа (ну, допустим, пишу авторизацию на куках), если есть она - welcome, качайте!, нет - вперед на регистрацию. А вот как написать такую хотелку...

У кого какие мысли на этот счет?
Название: Защита файлов и авторизация
Отправлено: glebushka от 29 Ноября 2002, 02:39:27
то что пришло сразу в голову: написать скриптик, который проверяет связку логин-пароль: выдаёт листинг соответствующего каталога, в виде ссылок, жамкнул юзверь по ссылке (ссылка ведёт на скрипт), скрипт чиатет файл и выдаёт в браузер. А сама папка защищена правами. Чтоб читать мог только скрипт.
Название: Защита файлов и авторизация
Отправлено: vicky2001 от 29 Ноября 2002, 03:05:27
Сама сейчас над такой схемой мыслю :)

Сразу два вопроса:

1) Как этот самый файл юзеру вылить программно?
Если можно кусок кода :) но и за теорию буду очень признательна.

2) Какие права надо поставить папке и надо ли в нее класть .htaccess?

Спасибо за ответ!
Название: Защита файлов и авторизация
Отправлено: vicky2001 от 29 Ноября 2002, 03:13:06
Вопрос №1 снялся сам собой методом тыка ;)

else {
   open(SRC,"   binmode(SRC);
   while(my $a = ){
      print $a;
   }
}

Верно?
Название: Защита файлов и авторизация
Отправлено: YA от 29 Ноября 2002, 08:48:47
Цитировать
Если авторизовываться через .htaccess и .htpasswd, то тот же самый умный юзер может случаем влезть в менеджер и погадить инфу на сайте.

Не сможет. Здесь не нужны никакие скрипты - все делается на уровне сервера (.htaccess).
Цитировать
При обращении к файлу в закрытой папке вызывается скрипт проверки доступа
Делаешь, например, свой обработчик... (тоже в .htaccess).

Переехали в "Веб Сервера".
Название: Защита файлов и авторизация
Отправлено: ThE0ReTiC от 29 Ноября 2002, 11:09:27
Цитировать
свой обработчик

Описан в мануале.
Вообще почитай РНР ман. Тот пример, что там дается можно портировать на любой удобный тебе язык.
Потом, если ты делаешь авторизацию через .htaccess то набиванием прямой ссылки авторизацию все равно не обойти.
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 29 Ноября 2002, 12:30:57
Народ, ну сколько можно твердить, что базовая авторицация - легко взламывается? Если нужны доказательства (теоретические) - могу дать. Используйте динамические сессии. Далее проверяйте пользователя, и присвоенные ему права. И основываясь на них запускайте тот скрипт, который позволяет выполнять то, что позволено этому пользователю.
Название: Защита файлов и авторизация
Отправлено: ThE0ReTiC от 29 Ноября 2002, 12:49:12
Tarasenko
Давай
Название: Защита файлов и авторизация
Отправлено: NeoNox от 29 Ноября 2002, 14:03:13
Ок. Я тоже с удовольствием послушаю.
Только если они не совсем "теоретические".
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 29 Ноября 2002, 14:13:40
Самое безобидное:
(одна и з моих статей...)
Сегодня речь пойдет о системах авторизации. Данная тема очень и очень обширна
по своей сути, потому я постоянно буду ее касаться в последующих рассылках.
Сегодня рассмотрим базовую авторизацию.
Есть 2 способа ее создания:
1)В конфигах web-сервера приписывается описание папки, с присвоением права доступа
определенному классу пользователей. Так же можно указать диапазон ip адресов,
по которым авторизация будет разрешена. Это наиболее правильный способ защиты.
Хотя и он не лишен своего недостатка, о котором пойдет речь позже.
2)В саму защищаемую папку залить файлы с описанием прав доступа к папке и пароля.
Я крайне не рекомендую этот способ. Хакер может попробовать эти файлы прочитать,
использую стандартные уязвимости cgi скриптов вашего сайта. И хоть эти пароли
и хранятся в закриптованном виде, зашифровать их не представляется большой проблемой
ибо все стандартные методы криптования уже известны.
Но эти файлы еще надо хакеру прочитать, что достаточно сложная задача.
Есть гораздо более простые способы.
Наибольшую опасность представляет собой глюк большинства всех известных браузеров.
Немного теории о базовой авторизации. При попытке запросить файл из защищенной
папки, сервер отсылает запрос браузеру в виде проверки логина и пароля, получив
данные в ответ и соответствующим образом обработав их сервер пускает пользователя
в папку. Однако вы не задавались вопросом, почему при повторном запросе из того-же
окна обозревателя сервер не спрашивает пароль? Он запомнил ваши данные в виде
ip? Нет.
Браузер при всех последующих попытках запросить документы передает в HTTP протоколе
ваш логин и пароль. Вы не обращали внимание, что если вы, не перегружая вашу
программу-проводник по сети, после администрирования вы посетите несколько сайтов
и вернетесь обратно в администрилку – то ваши логин и пароль спрашивать не будут.
Все хорошо, если бы логин и пароль передавались ли только тому серверу, который
собственно и проверил их. Но так не происходит. Эти данные передаются всегда.
А это означает что злоумышленник, при наличии собственного виртуального web-сервера
может перехватить эти данные. Для того что бы получить логин ничего не надо.
Он передается в переменных окружения HTTP протокола. С паролем дело обстоит сложнее,
но не намного. Для получения пароля достаточно написать небольшой модуль н-р
для моего любимого серверного языка Perl. С помощью его можно также и вести лог
и записью туда полученного логина, пароли и ссылающейся страницы (для того что
бы знать где эта администрилка находиться). Теперь представьте ситуацию – вы
модератор на каком-то сайте статей. В теле статьи вы увидели ссылку. Перейдя
не нее вы тем самым рассказали все необходимое хакеру о себе. При наличии такой
вещи у вас как поддержка html при добавлении статьи вам и переходить по ссылке
не надо будет, автор может поставить маленькие iframe или java script. Вы ничего
так и не узнаете. Данная уязвимость присутствует при всех видах базовой авторизации.
Потому совет. При выходе из администрилки – не забудьте перегрузить ваш браузер.
Это спасет вас от непредсказуемых последствий.

С уважением и всегда ваш, Тарасенко Сергей

Есть более опасные вещи. Но их я говорить не буду. Зачем?
Название: Защита файлов и авторизация
Отправлено: Xander от 29 Ноября 2002, 14:40:33
Цитировать

Есть более опасные вещи. Но их я говорить не буду. Зачем?


Это очень правильно. А то уже некоторые стали спрашиватьть, "как чужие куки прочитать", "как страничку насильноо стартовой сделать"...
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 29 Ноября 2002, 14:54:59
Я свои данные не скрываю. Потому что мне ьоятся нечего. Я ни кому не пакостил. А знания - это знания. Одно только плохо. Народ задолбал, не поможнешь отмстить, не скажешь как, не ...
Говорю сразу! НЕТ!
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 29 Ноября 2002, 15:11:16
Xander, на то есть специализированные сайты. Сегодня сктати оофициально напечатали то, что я узнал год назад...
[moderated]

Модераторы, если считаете что эта ссылка черезчур откровенна - то можите ее удалить!
[off]
удалил
[/off]
Название: Защита файлов и авторизация
Отправлено: NAS от 29 Ноября 2002, 15:35:26
Tarasenko

Я что-то не понимаю что это дает.
Название: Защита файлов и авторизация
Отправлено: NeoNox от 29 Ноября 2002, 15:43:54
Цитировать
Браузер при всех последующих попытках запросить документы передает в HTTP протоколе
ваш логин и пароль.Потому совет. При выходе из администрилки – не забудьте перегрузить ваш браузер.
Это спасет вас от непредсказуемых последствий.

Страшилка.
А если серьезно, то юзайте ssl и будете спать спокойнее.
А если еще серьезнее: я тебе могу сюда выложить сеанс (без поднятого ssl)  и ты мне оттуда достанешь пароль и логин. Ок? В качестве эксперимента. Или просто хешированый хз каким образом пароль сначала?
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 29 Ноября 2002, 15:44:54
Что именно? То что я написал или то,ч то написанно там, куда ведет ссылка...
Если вы про то,ч то я написал - то все просто. Очень просто узнать пароль и логин... Разкриптоваь их - раз плюнуть...
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 29 Ноября 2002, 15:47:28
Кстати, а не отвлеклись мы от темы? Если вам интересны мои статьи - могу написать несколько... Если просто хотите пообсуждать - можим создать новый топик....
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 29 Ноября 2002, 15:53:51
NeoNox, блин, я на экзамене?
Название: Защита файлов и авторизация
Отправлено: NeoNox от 29 Ноября 2002, 15:58:42
Да нет. Ты просто так утверждаешь, что это как два байта об асфальт... Вот я и спросил. У меня такого опыта нет - вот и все.
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 29 Ноября 2002, 16:19:39
Это вполне реально, я подписываюсь под своими словами. Но муторно.
А выцепить... Тот же Perl позволяет полностью обробатывать и создавать HTTP. И все данные и цепляю из него.
Делать не буду - вопрос решенный. Я не собираюсь доказывать свою состоятельность. И не требую присвоения мне статуса главного хакера, ибо он будет ошибочен. Просто предупредил, что такие возможности существуют...
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 29 Ноября 2002, 16:31:00
NeoNox, далее не всякий ssl помогаю спать спокойно.
А криптуется пароль обычным стандартным апачевским криптованием. На пвп-лаб есть бесплатный скрипт, позволяющий при помощи базоваой авторизации криптовать пароли. Что мешает поступить наоборот? Правильно - сессии. А зачем пароль раскриптовывать, если можно его передать в HTTP запрос уже закриптованным? Да я не буду знать явно пароль, но использовать я его смогу... Даже если криптование будет основанно на сессиях, не апачавских, как на последних коммерческих web-серверах...
Название: Защита файлов и авторизация
Отправлено: ThE0ReTiC от 29 Ноября 2002, 17:59:49
Tarasenko
Кстати. Коль я пока не закрыл тему - а не подскажешь ли какой алгоритм шифрования использует Apache для генерации файла паролей?
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 29 Ноября 2002, 18:54:21
Юморист... блин.
Ну-ну...
Название: Защита файлов и авторизация
Отправлено: ThE0ReTiC от 29 Ноября 2002, 19:01:09
Tarasenko
1. Дубляж постов карается баном.
2. Да. Что выросло, то выросло
3. На вопрос-то ответь. Просто очень инстересно как можно кроме прямого перебора его сломать :)
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 29 Ноября 2002, 19:35:13
ThE0ReTiC,

Хорошо. А вы не видели ни где исходников того же апача?
Я видел... Правда вглубь не заглядывал. Так вот, если логически думать...
Кстати, если я в чем-то ошибаюсь, поступите просто - переубедите меня. А не грозите баном и попытками опустить за понты и неверные знания. Понтов нет, есть уверенность. Однако я человек - следовательно я имею право на ошибки
Название: Защита файлов и авторизация
Отправлено: NeoNox от 29 Ноября 2002, 19:45:04
Tarasenko
А вы видели алгоритмы аутентификации RSA или DSA?
Я видел. Правда вглубь не заглядывал. Ну и что? Или это есть повод OpenSSH перевести на сесии? (блин, самому смешно) ;)
Название: Защита файлов и авторизация
Отправлено: Xander от 29 Ноября 2002, 20:10:32
Тут уж что-нибудь одно - либо уверенность, либо право на ошибки.
Либо успешный опыт взлома по описанным методикам, либо disclaimer типа: "я сам не пробовал, но мне кажется, что можно сделать так: ...".
Название: Защита файлов и авторизация
Отправлено: vicky2001 от 29 Ноября 2002, 23:57:47
Спасибо всем большое! Свои проблемы решила

Особенное спасибо г-ну Tarasenko за науку!

Сейчас пишу авторизацию к менеджеру без .htaccess ;)

А может кто-нить поподробнее рассказать про SSL - в смысле как его через Перл юзать иль ссылку какую добрую даст?
Название: Защита файлов и авторизация
Отправлено: Stas от 01 Декабря 2002, 02:59:47
SSL tebe nado v Apache vkliuchit\'.. toest\' u tebia dolzhen byt\' otdel\'nyi Virtual server pod portom 443..

Ssylka : http://www.modssl.org

Tarasenko , esli po tvoemu tak legko slomat\' apachevskii crypt htpasswd fileov, a 128bit shifrovka SSL, eto po tvoemu tozhe mozhno legko vzlomat\' ?

Vopros na zasypku... Napishi formulu prostyh chisel !! Mozhet tebe za eto premiu nobelia dadut...
Название: Защита файлов и авторизация
Отправлено: ThE0ReTiC от 01 Декабря 2002, 15:11:20
Tarasenko
Более того.
Открою тебе ТАЙНУ...
Они у меня есть, практически всех релизов, начиная с 1.3.12
Ты бы во первых заглянул внутрь, п во-вторых почитал бы чего-нить про MD5 и криптоустойчивость современных алгоритмов шифрования.
Логически думать - это конечно вешь нужная. Главное не переусердствовать. И иногда заглядывать в исходники.
Название: Защита файлов и авторизация
Отправлено: Дмитрий Попов от 01 Декабря 2002, 15:50:48
Гы :-).
Итак, пришел Тарасенко!!!
Все! можно боятся!
Десятки тысяч серверов, использующих http-авторизацию - бойтесь.
Теперь Вас сломать элементарно. Потому что Тарасенко знает как!

Блин, как же бесит, когда приходит кто-нибудь один, и говорит - "Эй! Я умный - тот способ который Вы все использовали до сих пор - говно!
А алгоритм шифрования, практически самый распространенный во всех под юниксовых разработках, оказывается очень легко расшифровывается.
И серваки легко взламываются, а мои статьи - правильные, и все я знаю лучше всех."

Знаете, что самое интересное?
А я вот прочитал статью, и подумал - "Хм, так причем же здесь Http?" Все, что у Вас описано - кое-где бред, кое-где человеческих фактор. И то и другое не зависят от способа авторизации.
Только найти дыру в скрипте авторизации написанным Васей Пупкиным, гораздо легче, чем в программе, которая разрабатывается тысячями и тестируется миллионами профессиональных разработчиков, а не таких как Вы.
Название: Защита файлов и авторизация
Отправлено: ThE0ReTiC от 01 Декабря 2002, 16:40:47
Уехали во флейм
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 02 Декабря 2002, 11:19:45
См. приват...
Название: Защита файлов и авторизация
Отправлено: Tarasenko от 02 Декабря 2002, 13:22:15
Гы, и что кажут те, кто так громко кричал и ругался, что не любит меня? Я же сказал - то что я написал там, фигня это... Не более, не менее. Хотя люди попадаються и на это.
То что я ляпов наделал - признаю. Однако, то что я описал - работает. На этом я считаю эту дисскусию закрытой. И не кого я не пугаю, что все можно поломать.
Название: Защита файлов и авторизация
Отправлено: AlieN от 02 Декабря 2002, 17:23:28
н-да.....
MD5 думаю секунд за 10 тарасенко щелканет :)
Название: Защита файлов и авторизация
Отправлено: Tronyx от 02 Декабря 2002, 18:15:13
Цитировать
Гы, и что кажут те, кто так громко кричал и ругался, что не любит меня? Я же сказал - то что я написал там, фигня это... Не более, не менее. Хотя люди попадаються и на это.
То что я ляпов наделал - признаю. Однако, то что я описал - работает. На этом я считаю эту дисскусию закрытой. И не кого я не пугаю, что все можно поломать.

Было что-то интересное в привате?:)

Цитировать
MD5 думаю секунд за 10 тарасенко

:D
Название: Защита файлов и авторизация
Отправлено: NeoNox от 02 Декабря 2002, 18:32:21
Нет.
Название: Защита файлов и авторизация
Отправлено: AlieN от 02 Декабря 2002, 19:00:07
NeoNox
А че хоть было покаж :)
Название: Защита файлов и авторизация
Отправлено: NeoNox от 02 Декабря 2002, 19:12:09
Адрес сайта с логином и паролем типа вася вася_ясав.
Это не подтверждает неустойчивости алгоритмов, только людская глупость...
Название: Защита файлов и авторизация
Отправлено: Xander от 02 Декабря 2002, 19:33:38
Надо было ему твой сайт сломать...или мой...или еще чей-нибудь. А то вася какой-то :)
Название: Защита файлов и авторизация
Отправлено: bhor от 03 Декабря 2002, 10:04:33
Блин пропустил такие дебаты.

Xander :super:

Готов дать свой адрес для взлома ;)
Название: Защита файлов и авторизация
Отправлено: Metaller от 03 Декабря 2002, 10:36:12
блин..... страшно, аж жуть. ;)
Название: Защита файлов и авторизация
Отправлено: Stas от 04 Декабря 2002, 21:28:09
ia dumaiu on formuloi prostyh chisel pozagruzilsia.. Ili pro RSA i MD5 algoritm pochital ;)
Название: Защита файлов и авторизация
Отправлено: Дмитрий Попов от 07 Декабря 2002, 00:11:37
http://www.lenfilm.ru/temp_admin/

Видите как рискую? Даже не сайт Васи Пупкина даю - а самого Ленфильма!!!

Ну так как?

P.S. Супер! А если я Вам щас в приват Вышлю пароль и логин к вышеприведенной ссылке - Вы то же решите что я её сломал?