+  HandyCache форум
|-+  Главная категория» Общие вопросы» Безопасность HC и относительные ссылки
Имя пользователя:
Пароль:
Страниц: [1] 2  Все   Вниз
  Отправить эту тему    Печать  
Автор Тема: Безопасность HC и относительные ссылки  (Прочитано 12012 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« : 02 мая 2008, 07:36:40 »

Можно. Это делается с помощью конструкции  "../" в начале замены. Количество элементов зависит от глубины вложенности папки кэша.

Шокирован Это же дыра в безопасности! Так можно и в каталог Windows залезть. Неужели такой способ сейчас работает?
Просто я помню что как раз из-за подобных проблем автор отверг мое предложение насчет списка преобразования имени файла в кэше и появилось просто Преобразование URL.
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #1 : 03 мая 2008, 16:28:50 »

Это же дыра в безопасности! Так можно и в каталог Windows залезть.

А в чем дыра-то? Чтобы залезть в каталог Windows надо написать соответствующее правило в список HC. Чтобы это сделать, нужен доступ к компьютеру. А если он есть, то и без HC можно делать все, что вздумается!

Цитировать
Неужели такой способ сейчас работает?

Работает и даже приносит практическую пользу!



С версии RC1 1.0.0.64 добавлено управление доступом к файлам вне папки кэша через параметр ReadOnlyFromCachePath в ini-файле (по умолчанию True).
« Последнее редактирование: 27 мая 2008, 19:23:49 от DenZzz » Сообщить модератору   Записан
Сергей
Beta tester
*****

Репутация: +9/-2
Offline Offline

Сообщений: 621



« Ответ #2 : 03 мая 2008, 22:30:32 »

Все таки не могу понять тогда, почему не появился список "Преобразование пути"? Так было бы намного гибче. Сейчас я не могу перенаправить сохранение файла на другой диск например.
Сообщить модератору   Записан
andrey_irk
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 13


« Ответ #3 : 15 мая 2008, 17:02:24 »

По мотивам http://handycache.ru/component/option,com_smf/Itemid,10/topic,1381.0/
В режиме Offline при запросе ссылки с относительными путями /../ HC аккуратно выдает запрошенный ресурс.
Пример: http://s1s2s3s4s5s.com/../../WhatsNew.txt получим список изменений программы HC.
Страшно подумать о /../../../../ и т.д.
Что думает по этому поводу разработчик?
Планируется ли закрыть эту особенность/баг/намеренность (см в Offline п7. http://s1s2s3s4s5s.com/../../License.txt). Совсем не хочется доверять пользователям локальной сети.
Считаю что, правило .*/\.\./ и т.п. в черном списке не выход из положения.
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #4 : 15 мая 2008, 18:38:57 »

В режиме Offline при запросе ссылки с относительными путями /../ HC аккуратно выдает запрошенный ресурс.
...
Совсем не хочется доверять пользователям локальной сети.

Но включить Offline пользователь локальной сети сам не сможет. ИМХО, опасность этой фичи несколько преувеличена! Тем более, как вы уже заметили, правило /\.\./ в "Черном списке" полностью запретит использовать относительные ссылки!
Сообщить модератору   Записан
mai62
Автор HC
*****

Репутация: +226/-4
Offline Offline

Сообщений: 6383


« Ответ #5 : 15 мая 2008, 18:43:14 »

В следующей сборке закрою.
Что интересно, эта фишка с FF и Opera не прокатывает.
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #6 : 15 мая 2008, 18:49:05 »

В следующей сборке закрою.

Без права выбора или опционально? А как быть с практической пользой?
Сообщить модератору   Записан
mai62
Автор HC
*****

Репутация: +226/-4
Offline Offline

Сообщений: 6383


« Ответ #7 : 15 мая 2008, 19:43:10 »

Я запрещу такие URL, приходящие извне. А полученные с помощью списка Преобразование URL останутся.
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #8 : 15 мая 2008, 19:54:10 »

Я запрещу такие URL, приходящие извне.

Хм, т.е. фактически получится аналог правила  /\.\./ в "Черном списке", только прошитый прямо в коде...
Сообщить модератору   Записан
mai62
Автор HC
*****

Репутация: +226/-4
Offline Offline

Сообщений: 6383


« Ответ #9 : 15 мая 2008, 20:10:16 »

Цитировать
Хм, т.е. фактически получится аналог правила  /\.\./ в "Черном списке", только прошитый прямо в коде...
Это плохо?
Сообщить модератору   Записан
andrey_irk
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 13


« Ответ #10 : 15 мая 2008, 20:28:38 »

Я запрещу такие URL, приходящие извне.
говорю шепотом
Также предусмотреть различные комбинации %2f%2E.%2f../ и т.д.
/.../ вероятно в некоторых других программах

Но включить Offline пользователь локальной сети сам не сможет.
Сможет. Сможет очень легко. Я извиняюсь, но мне кажется Вам это было известно.
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #11 : 15 мая 2008, 21:01:49 »

Это плохо?

Да нет, просто лишняя работа...

Сможет. Сможет очень легко. Я извиняюсь, но мне кажется Вам это было известно.

Как? Просвети...

Добавлено: 15 Мая 2008, 21:39:11

Также предусмотреть различные комбинации %2f%2E.%2f../ и т.д.

Такие комбинации вполне могут быть каким-нибудь параметром и в обычном URL, как и /../ собственно...
Сообщить модератору   Записан
andrey_irk
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 13


« Ответ #12 : 15 мая 2008, 21:03:54 »

Как? Просвети...
Пользователь контролирует линию связи (точнее администратор не может контролировать ежемилисекендно линию связи и другое оборудование) и нарушив ее, напрмер, обрывом  вызвать переход HC в Offline в зависимости от настроек. Или обрушить роутер по некоторым портам.
Более того, HC намеренно переводиться в Offline администратором в платные часы трафика.

To  mai62
Еще раз спасибо mai62 за HC. Вся прелесть заключается в связке кеш+преобразование URL+переадресация, что и позволяет в платные часы (2 р/МБайт, регион такой страна такая) в режиме Offline пользователям лок. сети посещать-читать там где они или другие уже были.
Сообщить модератору   Записан
mai62
Автор HC
*****

Репутация: +226/-4
Offline Offline

Сообщений: 6383


« Ответ #13 : 15 мая 2008, 21:10:51 »

Цитировать
To  mai62
Еще раз спасибо mai62 за HC.
А тебе спасибо, что обратил наше внимание на проблему.
Цитировать
Такие комбинации вполне могут быть каким-нибудь параметром и в обычном URL, как и /../ собственно...
Опера и FF перед тем как отдать URL наружу просто удаляет из него /../ оставляя только /. Думаю много вреда не будет, если НС поступит также.
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #14 : 15 мая 2008, 21:24:35 »

Пользователь контролирует линию связи (точнее администратор не может контролировать ежемилисекендно линию связи и другое оборудование) и нарушив ее, напрмер, обрывом

Какую-то закрученно-криминальную историю со шпионским подтекстом вы рассказываете! За порыв линий связи вообще-то уголовные дела заводят...
А почему в этой истории пользователи оказались умнее администратора? Обычно все наоборот... Подмигивающий

Цитировать
вызвать переход HC в Offline в зависимости от настроек.

Именно! В зависимости от настроек! Почему администратор не смог правильно настроить прокси?

Цитировать
Более того, HC намеренно переводиться в Offline администратором в платные часы трафика.

Одно единственное правило в "Черном списке" решает все проблемы! И при этом вы получаете возможность гибко настроить все блокируемые комбинации, не создавая проблем для "честных" URL c /../ в параметрах!



Опера и FF перед тем как отдать URL наружу просто удаляет из него /../ оставляя только /.

Это смотря где будет стоять /../ .
Например: http://s1s2s3s4s5s.com/WhatsNew.txt?v=/../  Опера пропускает без изменений!

Кстати, напомните мне, пожалуйста, где сказано, что URL  с /../ не допустим?! Не смог найти...
Сообщить модератору   Записан
andrey_irk
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 13


« Ответ #15 : 15 мая 2008, 23:11:13 »

To mai62
... просто удаляет из него /../ оставляя только /. Думаю много вреда не будет, если НС поступит также.
DenZzz прав: синтаксис site.com/dir1/../dir2 абсолютно честный, с любым вхождением /../.
Генерировать url могут другие компьютерные программы или оборудование с http интерфейсом.
site.com/dir1/dir2/../../dir1/dir2/ или site.com/dir1/dir2/.../dir1/dir2/ нормальный url с точки зрения машины источника и машины получателя, фактически приводящий к site.com/dir1/dir2/. Убивать "/../" не надо.

Одно единственное правило в "Черном списке" решает все проблемы!
Оно не является дефолтным, а как бы "искусственным".

А почему в этой истории пользователи оказались умнее администратора?
Все гораздо серъезнее - ОНИ могут оказаться глупее администратора и сломать технику, порвать провод, сформировать такой url. Потому что ОНИ это факторы которые никто не контролирует (пытливый пользователь, вирус-сканер, оборудование с http интерфейсом, простая неисправность, пьяный электрик, экскаватор, гроза и т.д.)

Если подитожить, в любом случае "предупрежден - значит вооружен". А то что-то у меня складывается комплекс вины с поднятием этой темы.


Сообщить модератору   Записан
Михаил
Gold beta tester
*****

Репутация: +337/-14
Offline Offline

Сообщений: 5513



« Ответ #16 : 16 мая 2008, 01:10:59 »

Ну, лицензию почитать в оффлайне дефолтные списки дают разными способами Улыбка
Можно, например, и так:
http://../license.txt
http://..:1/license.txt
http://forum.ru-board.com/.&bm=1./webwarper.net/ww/www.../license.txt

Правил в Черном списке не напасешься.
« Последнее редактирование: 16 мая 2008, 01:18:22 от Михаил » Сообщить модератору   Записан
mai62
Автор HC
*****

Репутация: +226/-4
Offline Offline

Сообщений: 6383


« Ответ #17 : 16 мая 2008, 11:21:38 »

andrey_irk
Цитировать
Если подитожить, в любом случае "предупрежден - значит вооружен".
Согласен с тобой, за это и поблагодарил тебя.
Как мы с этим поступим? Это другой вопрос. Но важно что, решим мы это осознанно.
2All
На мой взгляд важно, чтобы по меньшей мере поведение по умолчанию было безопасным. Предлагаю вообще закрыть любой доступ к файлам вне папки кэша и в ini-файле сделать опцию, чтобы можно было вернуть как было.
Сообщить модератору   Записан
DenZzz
Модератор
*****

Репутация: +179/-11
Offline Offline

Сообщений: 5589



« Ответ #18 : 16 мая 2008, 12:22:43 »

Предлагаю вообще закрыть любой доступ к файлам вне папки кэша и в ini-файле сделать опцию, чтобы можно было вернуть как было.

Если выбирать из двух "зол", то я за это. Подмигивающий
Блокировать относительные ссылки извне, а-ля вшитый "Черный список", не лучшее решение - слишком много вариантов написания и возможных ложных срабатываний!
А вот удалять опционально на последнем этапе после всех URLtoCache-преобразований из полученного пути все \..\ - более разумно.

P.S. Причем это можно сделать уже сейчас и без параметра в INI !!! Добавить соответствующее правило в конец списка "Преобразование URL" не сложно...
Сообщить модератору   Записан
mai62
Автор HC
*****

Репутация: +226/-4
Offline Offline

Сообщений: 6383


« Ответ #19 : 16 мая 2008, 12:39:26 »

Я думал перед чтением файла из кэша сделать проверку начинается ли путь к файлу строкой папки кэша. Если нет, сказать, что такого файла нет.
Цитировать
P.S. Причем это можно сделать уже сейчас и без параметра в INI !!! Добавить соответствующее правило в конец списка "Преобразование URL" не сложно...
Оно может и так. Но безопасность должна быть обеспечена по умолчанию. Правило пользователь может выключить не осознавая последствий.
Сообщить модератору   Записан
Страниц: [1] 2  Все   Вверх
  Отправить эту тему    Печать  

 
Перейти в: