The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Уязвимость конфигураций Nginx с некорректными настройками блока alias, opennews (??), 05-Июл-23, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


16. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  –6 +/
Сообщение от Аноньимъ (ok), 05-Июл-23, 21:21 
Вообще отдавать файлы из директорий в интернет по шттп запросам немного маразматичная идея...
Как и сервера почты хранящие сообщения в файлах.
Но это юникс технологии...
Ответить | Правка | Наверх | Cообщить модератору

21. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  –3 +/
Сообщение от OpenEcho (?), 05-Июл-23, 22:10 
> Вообще отдавать файлы из директорий в интернет по шттп запросам

И в чем теперь принято отдавать файлы по интернету если хттп?

> немного маразматичная идея...

Приехали... Ысчо один судья и непризнанный гений?

> Как и сервера почты хранящие сообщения в файлах.

А, ну да, надо в облачных бакетах, точно, - всех в одно стойло
Или там что то новое нарисовалось?

Ответить | Правка | Наверх | Cообщить модератору

23. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  –3 +/
Сообщение от Аноньимъ (ok), 05-Июл-23, 22:19 
Речь шла конечно же о примитивном сопоставлении путей из запроса с путями файловой системы, что бред небезопасно и тупо.
Сама по себе концепция идиотская.

>И в чем теперь принято отдавать файлы по интернету если хттп?

FTP

>Или там что то новое нарисовалось?

Базы данных изобрели много много десятилетий назад. Но когда вместо мозгов юникс и сишка, то все на свете сразу файлом становится.

Ответить | Правка | Наверх | Cообщить модератору

28. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +2 +/
Сообщение от Аноним (28), 05-Июл-23, 22:48 
>>И в чем теперь принято отдавать файлы по интернету если хттп?
> FTP

Нет, спасибо. Мёртворождённые протоколы не нужны. FTP был большой ошибкой, и ещё большей ошибкой оказались все попытки его починить.

Ответить | Правка | Наверх | Cообщить модератору

30. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  –2 +/
Сообщение от OpenEcho (?), 05-Июл-23, 23:31 
> Сама по себе концепция идиотская.

Настолько "идиотская", что до сих пор доминирует

> FTP

Да, я смотрю у вас "очень высокий" концептуальный уровень

> Базы данных изобрели много много десятилетий назад.

Здается мне, что вы застряли на Вордпресс девелопенге?

Ответить | Правка | К родителю #23 | Наверх | Cообщить модератору

41. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +1 +/
Сообщение от Аноньимъ (ok), 06-Июл-23, 01:29 
>> Сама по себе концепция идиотская.
> Настолько "идиотская", что до сих пор доминирует

Ну да, как и идея херачить текст полученный из интернета в командную строку, как те потешные придурки тут делают https://www.opennet.ru/opennews/art.shtml?num=59363

>Да, я смотрю у вас "очень высокий" концептуальный уровень

Идея о том, что давать прямой доступ к системной базе данных случайным анонимам из интернета - плохая идея, слишком концептуально сложна для идеологически подкованных специалистов в юникс идеологии.

>Здается мне, что вы застряли на Вордпресс девелопенге?

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

Но вообще, если у этих ВордПресс девелоперов, есть понимание концепции баз данных, то как бы не стоит вам на них с верху в низ смотреть.

Ответить | Правка | Наверх | Cообщить модератору

68. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от YetAnotherOnanym (ok), 06-Июл-23, 12:06 
> Сама по себе концепция идиотская.

Сама по себе концепция вполне здравая. Для статичных html-страниц, лежащих на диске (это тот контент, для которого она создавалась), равно как и вообще для статичного контента, хранящегося в виде файлов на диске, эта концепция естественна и уместна. А то, что не только лишь все программеры могут в нормальный маппинг URL'а в путь ФС - это проблемы конкретных программеров.
Для динамического контента никто не запрещает сделать развесистую систему парсинга URL'а, выбора соответствующего обработчика для запроса и передачи ему разобранных частей URL'а в виде параметров (пример: https://zotonic.com/docs/1541/dispatch-rules ). Причём один из таких модулей, отдающий статичный контент (архивы с прошивками, например, или официальные документы в PDF, или что угодно, что отдаётся в неизменном виде), будет всё равно работать именно на принципе марринга пути URL'а в путь на диске.
Кстати, в упомянутом примере в URL'е вида https://sitename.domain/static/fw/../../../../../../etc/passwd обработка ".." производится до маппинга в путь на диске. То есть, первые два ".." съедят "fw" и "static", следующие будут просто отбрасываться, потому что "/" уже достигнут, и на стадию выбора контроллера для обслуживания запроса выйдет URL "https://sitename.domain/etc/passwd", на который прилетит "404".

Ответить | Правка | К родителю #23 | Наверх | Cообщить модератору

71. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от YetAnotherOnanym (ok), 06-Июл-23, 12:17 
Гы... автоформаттер опеннета тоже конвертит URL в https://sitename.domain/etc/passwd :))
Вот почему-то у одних хватает мозгов это сделать, а у других - нет.
Ответить | Правка | Наверх | Cообщить модератору

93. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от Аноним (94), 06-Июл-23, 17:15 
https://sitename.domain/prefix..etc/passwd

Вот же, не сконвертило.

А именно такой там кейс

Ответить | Правка | Наверх | Cообщить модератору

90. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от Аноньимъ (ok), 06-Июл-23, 14:36 
Урла это уникальный адрес ресурса.
ФС это системная база данных.
То что и там и там по случайности есть слэши в имени ресурсов и запросов к БД не означает что можно брать куски юрлы и на прямую херачить их в виде запросов к системной БД.

Так же как нельзя подобным образом из юрлы куски текста в sql запрос пихать.

Ответить | Правка | К родителю #68 | Наверх | Cообщить модератору

97. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от YetAnotherOnanym (ok), 06-Июл-23, 17:58 
Вообще-то, они там не по случайности.
Ответить | Правка | Наверх | Cообщить модератору

100. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от Аноньимъ (ok), 06-Июл-23, 18:15 
> Вообще-то, они там не по случайности.

Что ещё хуже.

Ответить | Правка | Наверх | Cообщить модератору

116. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от Аноним (-), 07-Июл-23, 12:00 
> FTP

Этот протокол вообще должен умереть. Мало того что не работает через половину натов и файрволов без плясок с бубнами - так еще пего перфоманс при заливке например кучи мелочи невероятно позорный, т.к. в пайплайнинг ЭТО насколько я помню не умеет.

> Базы данных изобрели много много десятилетий назад. Но когда вместо мозгов юникс
> и сишка, то все на свете сразу файлом становится.

И бобби тэйблс так то уже не молодой чувак :)

Ответить | Правка | К родителю #23 | Наверх | Cообщить модератору

72. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +1 +/
Сообщение от Бывалый смузихлёб (?), 06-Июл-23, 12:23 
Без разницы на чём
По сути, это просто запрос с конкретным юрл'ом, который далее уже обрабатывается

Очевидно, вместо прямого проброса на каталог, надо проверить в БД, есть ли запрашиваемый файл
Есть - выдать по указанному там адресу
Нет - послать
А ведь у файлов и каталогов могут быть разные права доступа относительно запрашивающих пользователей. тут нельзя просто взять - и пробросить каталог, в любом случае нужна БД и тонна записей

Оно уже тыщщу лет так работает. Хз кто в здравом уме в тырнеты пробрасывает доступ к файлам способом, описанным в статье

Ответить | Правка | К родителю #21 | Наверх | Cообщить модератору

74. "Уязвимость конфигураций Nginx с некорректными..."  +/
Сообщение от arisu (ok), 06-Июл-23, 13:07 
эвона как. ты, наверное, программист. оно и неудивительно, что софт жрёг гигабайты памяти, требует гигагерцы цпу, а тормозит при этом покруче, чем дум на 6502.
Ответить | Правка | Наверх | Cообщить модератору

81. "Уязвимость конфигураций Nginx с некорректными..."  +1 +/
Сообщение от Бывалый смузихлёб (?), 06-Июл-23, 13:49 
> ты, наверное, программист

А кого ещё можно почти наверняка встретить на опеннете ?)

Стандарты есть стандарты, а уж если решил открыть дыру - так будь готов что ей воспользуются
Ну серьёзно

Это ведь даже не ынтыпрайс
Просто, кагбэ логично давать пользователям доступ ровно до тех файлов, которые ты для них выгрузил, а не для всей системы просто потому, что один додумался написать несколько точек в адресе, а другой - урод-разработчик - не додумался это отфильтровать и обработать корректно

Посему, всё доступное строго по записи[в БД]

Но кстати, мой софт не тормозит даже на старом смартфоне

Ответить | Правка | Наверх | Cообщить модератору

86. "Уязвимость конфигураций Nginx с некорректными..."  +/
Сообщение от arisu (ok), 06-Июл-23, 14:08 
> Просто, кагбэ логично давать пользователям доступ ровно до тех файлов, которые ты
> для них выгрузил, а не для всей системы

а может это… того… ну, прочитать про права доступа фс, например? пользоваться серверами, которые умеют открыть себе нужные файлы, а потом имперсонироваться в нужного юзера? вот такое вот? а хотя не, ерунда какая-то, давайте дублировать возможности фс через отдельную базу данных, что может пойти не так…

Ответить | Правка | Наверх | Cообщить модератору

118. "Уязвимость конфигураций Nginx с некорректными..."  +/
Сообщение от Аноним (-), 07-Июл-23, 12:04 
Фу ты какой немодный кэп, ты еще скажи про чрут, или боже упаси, контейнеры. Представляешь, если у меня в виде ФС для браузера есть только Downloads по сути - ну, окей, попробуй спереть из этого view /etc/passwd какой - при том что его в этом view чисто технически нет. Потому что для работы браузера это не требовалось :)
Ответить | Правка | Наверх | Cообщить модератору

117. "Уязвимость конфигураций Nginx с некорректными..."  +/
Сообщение от Аноним (-), 07-Июл-23, 12:01 
> эвона как. ты, наверное, программист. оно и неудивительно, что софт жрёг гигабайты
> памяти, требует гигагерцы цпу, а тормозит при этом покруче, чем дум
> на 6502.

Потом бобби тейблс ему в базу /etc/passwd пропишет, дропнув попутно всякие беспонтовые сайтики. And we're back to square one :)

Ответить | Правка | К родителю #74 | Наверх | Cообщить модератору

98. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от YetAnotherOnanym (ok), 06-Июл-23, 18:09 
Не, ну чо, маппить URL в путь к файлу через специальную таблицу в БД - один из вариантов.
Заводить отдельную таблицу, целиком состоящую из записей вида
/manuals/0123456789.pdf | /var/www/static/manuals/0123456789.pdf
это, конечно, стильно-модно-молодёжно, да.
Ответить | Правка | К родителю #72 | Наверх | Cообщить модератору

101. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от Аноньимъ (ok), 06-Июл-23, 18:21 
Ну, для статического контента такую таблицу можно генерировать веб сервером автоматически из целевой директории.
Например.

Но можно и просто чуть более разумно парсить путь к файлу если уже так хочется прямого отношения части урлы к структуре каталогов.

Ключевое что не должно быть копипаста данных из урлы в запрос к ФС.

Ответить | Правка | Наверх | Cообщить модератору

119. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от Аноним (-), 07-Июл-23, 13:38 
> Ну, для статического контента такую таблицу можно генерировать веб сервером автоматически
> из целевой директории.
> Например.

И как это улучшает вон то состояние дел? Типа вот там сервер на@бывается, а вот тут не будет? Зато появляется еще и база. С своим пониманием кучи спецсимволов чего доброго, если это скуль какой, так что накидав файлов с креативно оформленными именами можно слегка отредактировать базу попутно с дропом всяких ненужносайтов - чтоб даунтайм побольше :). Чочо, проипли список студентов за последний год - и их сайты тоже? :)

Можно конечно тупенький и быстрый key-value поставить - но файлуха примерно этим и является. А контент легитимно юзает ../../img/somthing/abc.jpg какое-нибудь на раз. И совсем взять и вырубить эту фичу ФС - ну, ок, куча контента сломается.

> Но можно и просто чуть более разумно парсить путь к файлу если
> уже так хочется прямого отношения части урлы к структуре каталогов.

По-моему радикально огородить серв в чрут а лучше контейнер (т.к. чрут имеет ряд проблем) так то эффективнее решает задачу с меньшей возней.

> Ключевое что не должно быть копипаста данных из урлы в запрос к ФС.

Ну да, давайте в базу отправим. Чего доброго скульную, да? У которой своей специальной трактовки символов хватает. И будем стрематься вдвое большего числа спецсимволов в именах, и из-за фс и из-за базы. Не понимаю как добавление проблем может их убавить.

Ответить | Правка | Наверх | Cообщить модератору

122. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от Аноньимъ (ok), 07-Июл-23, 15:49 
>По-моему радикально огородить серв в чрут а лучше контейнер (т.к. чрут имеет ряд проблем) так то эффективнее решает задачу с меньшей возней.

Эффективнее как у эффективных менеджеров.

>спецсимволов

Проверка валидности запроса из неконтролируемой среды есть обязанность сервера, точка.

>Ну да, давайте в базу отправим.

ФС тоже база данных.
Ни в какую базу данных, тем более скульную, ненужно копипастить текст из запроса.

Ответить | Правка | Наверх | Cообщить модератору

127. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от Аноним (-), 07-Июл-23, 19:26 
> Эффективнее как у эффективных менеджеров.

Решает проблему - быстро, сердито, даже без правки кода - и хитов в перфоманс. Есть довольно большая разница - лукапать на каждый запрос базу или нет. Хотя если вы эффективный менеджер компании интел и вам надо продажи новых процов толкать, конечно, отсутствие лукапа в базу это безобразие, как же новые процы то продавать?!

> Проверка валидности запроса из неконтролируемой среды есть обязанность сервера, точка.

Теоретически да. Практически как видим семантика операций ФС - и ее активное использование контентом и проч - создает определенные риски. А бредни с базой создают неиллюзорный перфоманс хит. Докупать серваки во имя луны - ну такое себе.

> ФС тоже база данных.

Да. И лукап 2 баз вместо 1 перфоманса уж точно не добавит.

> Ни в какую базу данных, тем более скульную, ненужно копипастить текст из запроса.

Ну а в какую базу вы предлагали это все?

Ответить | Правка | Наверх | Cообщить модератору

130. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +1 +/
Сообщение от Аноньимъ (ok), 07-Июл-23, 20:22 
>Решает проблему - быстро, сердито, даже без правки кода - и хитов в перфоманс

Дальше можно не читать. Шиза настоящая.
Секономить пару тактов процессора на проверке валидности запроса.
Ах ну и главно БЕЗ ПРАВКИ КОДА.
Жесть какая.

> Ну а в какую базу вы предлагали это все?

Ещё раз, ни в какую. Задача сервера распарсить запрос, проверить его на валидность, и совершить соответствующие запросу действия, например передать ресурс из файла на диске, из скул сервера, Аллаха или Сатаны. Без разницы вообще откуда.

Ответить | Правка | Наверх | Cообщить модератору

131. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от Аноним (131), 07-Июл-23, 21:03 
> Дальше можно не читать. Шиза настоящая.
> Секономить пару тактов процессора на проверке валидности запроса.
> Ах ну и главно БЕЗ ПРАВКИ КОДА.
> Жесть какая.

Всего лишь практическая и практичная эксплуатация реально существующего софта в реальном мире. Не уповая на сферический идеальный софт в вакууме - которого не бывает - а подготовившись к парированию факапа "в случае аварии". А вы можете и огнетушитель в авто с собой не брать, ведь вы же супермен, с вами же ничего такого случиться не может?! И переборки в кораблях - глупости, нормальный капитан не должен пробоины получать!!!111. Представляете, вон то зарубает не только известные - но и целые классы НЕизвестных вулнов и минимизирует урон если какой-то вулн все же нашелся. Но возможно вам нравится когда у вас хаксоры тусят, конечно, и вы все для их удобства организуете. Ну там доступнуе диры с системными утилитами и прочим, уж конечно легитимный вебсерв жить не может без запуска шелла или там ls какого в директории.

> Ещё раз, ни в какую. Задача сервера распарсить запрос, проверить его на
> валидность, и совершить соответствующие запросу действия, например передать ресурс из
> файла на диске, из скул сервера, Аллаха или Сатаны. Без разницы вообще откуда.

А таки у серверов статики есть режим отдачи ФС по сути 1 в 1. Вплоть до автоиндекса, если это разрешить. Ну а вот выход за www root это такое довольно отдельное безобразие при этом.

ЧСХ вон там утверждается что это вообще чуть ли не by design. Но даже если и - я бы сказал что это довольно хреновый дизайн и пофиксить такое поведение когда alias с / и без / две большие разницы.. эм.. это довольно неожиданно для многих юзерей и ведет к факапам. Де факто это вообще ошибка конфигурации с документированной хренью была. Зачем хрень и почему похожа на вид на НеХрень - вопрос интересный.

Ответить | Правка | Наверх | Cообщить модератору

133. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +1 +/
Сообщение от Аноньимъ (ok), 07-Июл-23, 22:19 
>[оверквотинг удален]
> А вы можете и огнетушитель в авто с собой не брать,
> ведь вы же супермен, с вами же ничего такого случиться не
> может?! И переборки в кораблях - глупости, нормальный капитан не должен
> пробоины получать!!!111. Представляете, вон то зарубает не только известные - но
> и целые классы НЕизвестных вулнов и минимизирует урон если какой-то вулн
> все же нашелся. Но возможно вам нравится когда у вас хаксоры
> тусят, конечно, и вы все для их удобства организуете. Ну там
> доступнуе диры с системными утилитами и прочим, уж конечно легитимный вебсерв
> жить не может без запуска шелла или там ls какого в
> директории.

Предохраняться конечно же нужно.
Что не отменяет безумности подхода копипаста текста из http запроса в запрос к БД.
Как бы речь о том и идет. Что нужно как бы проверять то что клиент из Индии прислал в запросе.

> А таки у серверов статики есть режим отдачи ФС по сути 1
> в 1. Вплоть до автоиндекса, если это разрешить. Ну а вот
> выход за www root это такое довольно отдельное безобразие при этом.

Безобразие.

> ЧСХ вон там утверждается что это вообще чуть ли не by design.
> Но даже если и - я бы сказал что это довольно хреновый дизайн

Хреновый.

> и пофиксить такое поведение когда alias с / и
> без / две большие разницы.. эм.. это довольно неожиданно для многих
> юзерей и ведет к факапам. Де факто это вообще ошибка конфигурации
> с документированной хренью была. Зачем хрень и почему похожа на вид
> на НеХрень - вопрос интересный.

Интересный.

Ответить | Правка | Наверх | Cообщить модератору

134. "Уязвимость конфигураций Nginx с некорректными настройками бл..."  +/
Сообщение от Аноним (134), 07-Июл-23, 22:55 
> Предохраняться конечно же нужно.

А я то думал что надо уповать на сферический софт в вакууме, в котором багов не бывает.

> Что не отменяет безумности подхода копипаста текста из http запроса в запрос к БД.

В этом месте я могу вернуть ваши слова и заявить что хорошая БД не хуже хорошего сервера и не должна вестись на фигню. Некоторые key-value даже сожрут произвольный URL как key и не возымеют от этого проблем. Однако один и тот же URL можно представить довольно большим числом разных способов - потому что стандарт так написан - так что даже так можно откушать приколов. Конечно можно порассуждать о библах и всем таком. Но таки - приколы такого плана были и есть. И рядом - тоже. Типа вон тех request smuggling когда манипуляцией с запросом реквест подшивается к вообще кому-то постороннему. Например потому что фронт и бэк парсят немного по разному.

А запрос к базе на реквест статики таки булшит и RPS угрохает. Так что "докупите серверов".

> Как бы речь о том и идет. Что нужно как бы проверять
> то что клиент из Индии прислал в запросе.

Да никто не спорит что нужно - но тут вообще документированное поведение было так то. То что оно не лучшее на свете и ведет к ололо - ну, окей, допустим.

> Безобразие.

Но вон там это вообще фичой было. Просто довольно неожиданной для некоторых.

> Интересный.

Авторы нжинкса вообще местами странноватые вещи делали. Однако остальные делают не менее странные вещи. А иногда и более. Если так посмотреть, на глупые грабли встают практически все HTTP серваки. Сочетание семантики ФС с структурой контента и запросов это такое сочетание которое вообще довольно трудно реализовать секурно во всех позах. Особенно если еще наставить фронтов, бэков, в потом окажется что они одно и то же немного по разному понимают, ...

На мой вкус я б фильтровал ../ как элемент путей в (уже декодированых) урлах - но контент тогда сломается много где.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру