WebSet 74 Опубликовано: 27 января 2015 Рассказать Опубликовано: 27 января 2015 (изменено) function get_ip() { if ( filter_var( $_SERVER['REMOTE_ADDR'] , FILTER_VALIDATE_IP, FILTER_FLAG_IPV4) ) { return filter_var( $_SERVER['REMOTE_ADDR'] , FILTER_VALIDATE_IP, FILTER_FLAG_IPV4); } if ( filter_var( $_SERVER['REMOTE_ADDR'] , FILTER_VALIDATE_IP, FILTER_FLAG_IPV6) ) { return filter_var( $_SERVER['REMOTE_ADDR'] , FILTER_VALIDATE_IP, FILTER_FLAG_IPV6); } return 'localhost'; } Здравствуйте. В общем это кусок из 10.4 functions.php, думаю, вы его помните. Почему вы не проверяете наличие HTTP_X_FORWARDED_FOR и HTTP_X_REAL_IP при определении правильного IP пользователя? Изменено 27 января 2015 пользователем WebSet 2 Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 081 Опубликовано: 28 января 2015 Рассказать Опубликовано: 28 января 2015 Почему вы не проверяете наличие HTTP_X_FORWARDED_FOR и HTTP_X_REAL_IP при определении правильного IP пользователя? потому что это неправильное определение, и может быть подменено злоумышленником на любое нужное ему значение. Правильным определением может быть только одно, по $_SERVER['REMOTE_ADDR'], и в данном случае вам нужно корректно настраивать сервер, если используются на сервере кеширующие прокси. Цитата Ссылка на сообщение Поделиться на других сайтах
WebSet 74 Опубликовано: 4 февраля 2015 Рассказать Опубликовано: 4 февраля 2015 (изменено) Автор Посмотрите как реализовано в Sympfony https://github.com/symfony/symfony/blob/master/src/Symfony/Component/HttpFoundation/Request.php#L623 Настройки сервера в разрезе использования прокси ставящие кастомные хедеры - нормально, дальше двиг должен определять кто есть кто. Если он может работать только в 1 варианте, не кажется ли вам, что тут что-то не так? Сделайте в таком случае настраиваемым. Изменено 4 февраля 2015 пользователем WebSet 1 Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 081 Опубликовано: 4 февраля 2015 Рассказать Опубликовано: 4 февраля 2015 Посмотрите как реализовано в Sympfony Настройки сервера в разрезе использования прокси ставящие кастомные хедеры - нормально, дальше двиг должен определять кто есть кто. Нормально, это когда люди использующие прокси, правильно его настраивают, и тогда нет никаких проблем с определением IP. А не тогда тогда придумываются различные "костыли" для тех кто не умеет настраивать прокси на передачу в REMOTE_ADDR не кажется ли вам, что тут что-то не так? Однозначно нет. Потому как считаю правильным, необходимость в изначально правильной настройке сервера, а не лень и потенциальную бреш в безопасности. Если администратор ленив в настройке сервера, то он будет ленив во всем без исключения, забыв например при переезде на другой сервер, что там уже нет прокси сервера, и не заблокировав определение IP по указанному заголовку и создав тем самым уже бреш в безопаности. Цитата Ссылка на сообщение Поделиться на других сайтах
WebSet 74 Опубликовано: 4 февраля 2015 Рассказать Опубликовано: 4 февраля 2015 Автор К примеру мы используем связку nginx + apache2 + mod_php php узнает IP от apache2. но т.к. апач находится под nginx то для него это локалхост. В итоге имеем что для php это тоже локалхост. Для цели что бы прокся говорила оригинальный IP существует и обязательный по сути для проксей хедер X-Forwarded-For. Nginx подставляет/заменяет его в качестве оригинального IP клиента. Дальше есть 2 варианта что бы php узнал истинного клиента. 1) Установка модуля на apache2 чтобы последний считал определенный хедер как за реальный адрес (и как следствие передавал его php). 2) При определении IP на PHP ввести понятие трастовой прокси. Второй способ менее зависим от окружения и более производителен в целом. Буду рад прочитать ваше мнение на данную тему. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 081 Опубликовано: 4 февраля 2015 Рассказать Опубликовано: 4 февраля 2015 К примеру мы используем связку nginx + apache2 + mod_php php узнает IP от apache2. но т.к. апач находится под nginx то для него это локалхост. Апач это модульное ПО, поэтому подключаете в его настройках модуль mod_rpaf, что собственно и делают все кто использует связку nginx+апач и получаете нормальный реальный IP адрес посетителей в REMOTE_ADDR и более производителен в целом. Кто вам это сказал, скомпилирированный модуль априори более производителен, чем любые алгоритмы на PHP, которые при каждом выполнении PHP скрипта, помимо всего прочего компилируются в бинарный код, прежде чем выполниться. Цитата Ссылка на сообщение Поделиться на других сайтах
WebSet 74 Опубликовано: 6 февраля 2015 Рассказать Опубликовано: 6 февраля 2015 Автор Т.е. по вашему симфони и зенд делают неправильно все это время? Совершенно не следя за стандартами и пр.? 1 Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 081 Опубликовано: 6 февраля 2015 Рассказать Опубликовано: 6 февраля 2015 Т.е. по вашему симфони и зенд делают неправильно все это время? Совершенно не следя за стандартами и пр.? Они это делают ради ленивых администраторов сервера, и их мало заботит то что ленивого администратора могут взломать. А меня это заботит, вот и вся разница. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
WebSet 74 Опубликовано: 6 февраля 2015 Рассказать Опубликовано: 6 февраля 2015 Автор и их мало заботит то что ленивого администратора могут взломать. Серьезно? Откуда такая информация, если не секрет? Вы правда думаете, что тот же самый зенд, направленный на корпоративный рынок, делает что-то ради ленивых администраторов? 2 Цитата Ссылка на сообщение Поделиться на других сайтах
KorAngar 1 Опубликовано: 6 февраля 2015 Рассказать Опубликовано: 6 февраля 2015 Т.е. по вашему симфони и зенд делают неправильно все это время? Совершенно не следя за стандартами и пр.? Они это делают ради ленивых администраторов сервера, и их мало заботит то что ленивого администратора могут взломать. А меня это заботит, вот и вся разница. По моему вас должна заботить качественность продукта которая и так не на высоте. Понятие трастовых проксей есть норма. Тот же модуль к апачу сам смотрит извне поставленный хедер и пихает его адрес клиента. К слову я не уверен есть ли там возможность указать больше 1й трастовой прокси. Говорить что основные php фрейморки "ради ленивых администраторов" мягко говоря не корректно. Фреймворки для программистов делаются. Темболее не вам говорить о их коде с учетом что ваш собственный не самого лучшего качества. Вам в целом предложена адекватная доработка. Вас как разработчика платного программиного обоспечения она должна волновать а не вызывать жажду необоснованных споров. 5ти минутное дело добавить в конфиг список трастовых проксей с (локалхостом по дефолту или вообще пустым) и добавить скромную проверку. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 081 Опубликовано: 7 февраля 2015 Рассказать Опубликовано: 7 февраля 2015 Серьезно? Откуда такая информация, если не секрет? Понятие трастовых проксей есть норма. Тот же модуль к апачу сам смотрит извне поставленный хедер и пихает его адрес клиента. К слову я не уверен есть ли там возможность указать больше 1й трастовой прокси. Говорить что основные php фрейморки "ради ленивых администраторов" мягко говоря не корректно. Фреймворки для программистов делаются. Темболее не вам говорить о их коде с учетом что ваш собственный не самого лучшего качества. Элементарные знания принципов работы. Уязвимость и проблемы наступают не когда используют прокси, а когда не используют, и при этом например включают опредение по заголовку например HTTP_X_FORWARDED_FOR. Например достаточно забыть переключить настройку при смене сервера. Который без использования прокси может быть подменен злоумышленником на любое значение. Ваше незнание об этом, и как следстие отстаивание этой возможности, говорит как раз о моей правоте, потому как когда вас взломают вы придете именно сюда, и будете тут писать что это якобы DLE небезопасен, а не в вас проблема и в вашей невнимательности. Любой заголовок начинающийся с префикса HTTP_ является входящим из вне и может входить вне целевой локальной системы, другими словами не только от прокси серверов, а может быть послано на сервер помимо локального локальной системы. Префикс HTTP_ и означает что этот параметр пришел в систему по HTTP протоколу, т.е. прислан из вне. Безопасная система, это локально замкнутая система, если используется прокси сервер, то именно бек сервер должен знать что за прокси, и должен брать IP именно на основе этих знаний и передавать дальше на сервер. А не использовать "костыли" на PHP, который не может видеть дальше бек сервера и не может достоверно знать есть ли прокси и какой именно. Цитата Ссылка на сообщение Поделиться на других сайтах
KorAngar 1 Опубликовано: 7 февраля 2015 Рассказать Опубликовано: 7 февраля 2015 (изменено) Серьезно? Откуда такая информация, если не секрет? Понятие трастовых проксей есть норма. Тот же модуль к апачу сам смотрит извне поставленный хедер и пихает его адрес клиента. К слову я не уверен есть ли там возможность указать больше 1й трастовой прокси. Говорить что основные php фрейморки "ради ленивых администраторов" мягко говоря не корректно. Фреймворки для программистов делаются. Темболее не вам говорить о их коде с учетом что ваш собственный не самого лучшего качества. Элементарные знания принципов работы. Уязвимость и проблемы наступают не когда используют прокси, а когда не используют, и при этом например включают опредение по заголовку например HTTP_X_FORWARDED_FOR. Например достаточно забыть переключить настройку при смене сервера. Который без использования прокси может быть подменен злоумышленником на любое значение. Ваше незнание об этом, и как следстие отстаивание этой возможности, говорит как раз о моей правоте, потому как когда вас взломают вы придете именно сюда, и будете тут писать что это якобы DLE небезопасен, а не в вас проблема и в вашей невнимательности. Любой заголовок начинающийся с префикса HTTP_ является входящим из вне и может входить вне целевой локальной системы, другими словами не только от прокси серверов, а может быть послано на сервер помимо локального локальной системы. Префикс HTTP_ и означает что этот параметр пришел в систему по HTTP протоколу, т.е. прислан из вне. Безопасная система, это локально замкнутая система, если используется прокси сервер, то именно бек сервер должен знать что за прокси, и должен брать IP именно на основе этих знаний и передавать дальше на сервер. А не использовать "костыли" на PHP, который не может видеть дальше бек сервера и не может достоверно знать есть ли прокси и какой именно. Откровенный бред и необоснованные выводы. Вы хорошо читали то что писалось выше? Вы хорошо посомтрели код "костылей". Будте добры сделайте это. Вы расписываете очевидные вещи ссылаясь якобы кто то этого не понимает но при это совсем не понимаете о чем говорят вам. Ваш пример уязвимости вытикает из предположений что владелец третьесортный джуниор в лучшем случае + даже если так то выше писалось про "трастовую прокси" под который по дефолту имелось ввиду ничего или локалхост. И даже при смене сервера полным профаном это никак не создаст уязвимости (конечно если последний не изменит чего намеренно но при таком подходе не имеет роли насколько защищенная система из коробки). Будьте добры спуститесь на землю. Изменено 7 февраля 2015 пользователем KorAngar Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 081 Опубликовано: 7 февраля 2015 Рассказать Опубликовано: 7 февраля 2015 Откровенный бред и необоснованные выводы. Ну да, это ваше сообщение верх обоснованности и логических выкладок. Когда все что может сказать оппонент, это только эти высокопарные фразы, для меня это означает только то, что нет никакого смысла вести диалог с профессиональной точки зрения. Будьте добры спуститесь на землю. Лично я на ней, а не витаю в облаках в иллюзиях трастовости и того что администраторам сайтов можно хоть как то доверять, потому как они главная угроза для безопасности целевой системе. И в отличие от вас мои выводы основаны на фактах по работе с клиентами и администраторами сайтов. Администраторы сайтов DLE в своем большинстве, не то что не программисты и не системные администраторы серверов, а даже зачастую не вебмастера. DLE это не фреймворк, это готовый продукт, с чрезвычайно низким порогом вхождения, не требующих даже малейшего профессионализма со стороны создателя сайта. Сайты на нем создают те кто едва научился копировать файлы по FTP, а часто и те кто даже этого не умеет делать, и я в отличие от вас знаю о чем говорю. И создавать траст на основе действий админа, применительно к DLE, будет огромная ошибка. И DLE cпроектирован так, что надежно защищен из коробки, даже перед администратором сайта. О чем мы вообще разговариваем, если вы даже не привели банальных обоснований и примеров того когда физически невозможно настроить бек сервер, на работу с прокси сервером, и единственный вариант это использование PHP для этого. Таких вариантов попросту не существует, для любого прокси есть модуль для бек сервера. Для того чтобы дойти до бэк сервера dle-news.ru нужно пройти целых два кеширующих прокси сервера, один из которых вообще вне экосистемы сервера dle-news.ru и является внешним и тем не менее на нем стоит стандартный DLE, без каких либо костылей и прекрасно определяющий IP реальных посетителей. А вы тут пытаетесь какие то небылицы рассказывать про необходмость подобной реализации. Цитата Ссылка на сообщение Поделиться на других сайтах
KorAngar 1 Опубликовано: 7 февраля 2015 Рассказать Опубликовано: 7 февраля 2015 Откровенный бред и необоснованные выводы. Ну да, это ваше сообщение верх обоснованности и логических выкладок. Будьте добры спуститесь на землю. Лично я на ней, а не витаю в облаках в иллюзиях трастовости и того что администраторам сайтов можно хоть как то доверять, потому как они главная угроза для безопасности целевой системе. И в отличие от вас мои выводы основаны на фактах по работе с клиентами и администраторами сайтов. Администраторы сайтов DLE в своем большинстве, не то что не программисты и не системные администраторы серверов, а даже зачастую не вебмастера. DLE это не фреймворк, это готовый продукт, с чрезвычайно низким порогом вхождения. Сайты на нем создают те кто едва научился копировать файлы по FTP, а часто и те кто даже этого не умеет делать, и я в отличие от вас знаю о чем говорю. И создавать траст на основе действий админа, применительно к DLE, огромная глупость и ошибка. И DLE cпроектирован так, что надежно защищен из коробки, даже перед администратором сайта. О чем мы вообще разговариваем, если вы даже не привели банальных обоснований и примеров того когда физически невозможно настроить бек сервер, на работу с прокси сервером, и единственный вариант это использование PHP для этого. Таких вариантов попросту не существует, для любого прокси есть модуль для бек сервера. Для того чтобы дойти до бэк сервера dle-news.ru нужно пройти целых два кеширующих прокси сервера, один из которых вообще вне экосистемы сервера dle-news.ru и является внешним и тем не менее на нем стоит стандартный DLE, без каких либо костылей и прекрасно определяющий IP реальных посетителей. А вы тут пытаетесь какие то небылицы про необходмость подобной реализации. Я вас понял. Опыт ваш крайне узок и сомнителен если основывается на DLE. Продукту не нужно быть фреймворком что бы иметь дополнительный функционал который просит один из ваших покупателей и никак не приводит к уязвимости в типичной реализации которая не подразумевает слепо смотреть хедер. По вашему ответу видно что вы так и не прочитали что вам писалось выше и не смотрели код реализаций "гигантов" php. Давайте откровенно. Вам наверное уже не раз должны были говорить что ваш ДЛЕ чуть меньше чем полностью состоит из говнокода. Из чего делается вывод о вашем профессионализме в сфере разработки. Если вы это не сознаете то прислушайтесь и почитайте литературу, изучите существующие решения, последите за развитием языка и отрасли в целом. На мои знания и опыт не нужно ссылаться если вы их не знаете. Могу сказать вам что участвую в коммерческих разработках для средних и крупных компаний и гос учреждений. П.С. Я не пользователь DLE. Мне показали эту тему и ваше упорство показалось не разумным что в целом и подтвердилось. Искреннее желаю вам взяться уже за ум и коли раскрутка уже есть то выведете ваш продукт уже на качественно новый уровень. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 081 Опубликовано: 7 февраля 2015 Рассказать Опубликовано: 7 февраля 2015 Вам наверное уже не раз должны были говорить что ваш ДЛЕ чуть меньше чем полностью состоит из говнокода. Из чего делается вывод о вашем профессионализме в сфере разработки. Конечно говорили. Особенно недопрограммисты, которые пишут свои продукты на фреймоворках, а не с использованием нативного языка. Это самое распространенная фраза, среди тех кто способен только читать книжки. Лично я предпочитаю делать свои продукты исключительно на нативном коде, и писать нужные алгоритмы с нуля. а не путем подключения готовых написанных кем то функций из фреймворка. Поэтому ваше сообщение не ново, передо мной очередной "гуру модного кода", коих сотни тысяч. Недопрофессионалы, недопрограммисты и другие недо, которые считают что они гуру кода, это целое явление нашего мира. Фреймворки кстати и пишут именно для этих "недо", и неплохо при этом зарабатывают, и я лично рад, за тех кто зарабатывает на этих "недо". Но DLE выбирают не для того чтобы наслаждаться "модностью кода", а потому что работает быстрее, качественнее и потребляет несравнимо ресурсов. На мои знания и опыт не нужно ссылаться если вы их не знаете. Могу сказать вам что участвую в коммерческих разработках для средних и крупных компаний и гос учреждений. О своем опыте и знаниях вы сами рассказали в этой теме более чем достаточно. Если вы думали что это вызовет у меня большее уважение к вам, то это заблуждение, наоборот я понимаю почему так страдает качество любых гос. учреждений. Не считаю хвастовство с вашей стороны, чем то достойным уважения. и не смотрели код реализаций "гигантов" php. Лично я посмотрел и сразу понял о чем идет речь. А чем вы хвастаетесь, в том что родили в своей голове для себя "кумира", и сами им наслаждаетесь, и хотите чтобы другие им наслаждались? Нет уж увольте, я глупостями заниматься не намерен. Ищите адептов своего "модного кодинга" в другом месте. А мне нужно делом заниматься. А когда я захочу делать продукты для таких вот "недо", тогда и создам свою секту из таких как вы адептов поклонения чужому коду, а пока я делаю конечный продукт для конечных пользователей, а не код, ради кода. дополнительный функционал который просит один из ваших покупателей То что просит клиент и покупатель это правда. Я всегда прислушиваюсь к таким просьбам. И если они действительно являются важными и нужными, всегда стараюсь их реализовать по мере сил. Но если они основываются на "лени" конретного человека, и могут привести к проблемам других, то нет уж увольте, я этого делать никогда не буду. П.С. Я не пользователь DLE. Мне показали эту тему и ваше упорство показалось не разумным что в целом и подтвердилось Вам не кажется странным, что к такому писателю как вы выразились "говно кода", приходят похвастаться такие гуру "модного кода" и разработчики "крупных и средних компаний", а у меня такой необходимости и надобности нет. Вы пришли, похвастались и как? Удовлетворили свое эго ? Надеюсь что да. Я вам написал банальную фразу "не существует вариантов когда бэк сервер невозможно настроить на работу с прокси". А вы в ответ даже не смогли профессионально контр аргументировать, а начали хвастать что вы супер программист из супер компаний, и рассуждать о моем профессионализме. Что за бред вообще? Какой вы к черту профессионал после этого? Если бы вы работали на меня, вы были бы первым кого я бы уволил после такой аргументации. Иметь пожелание на реализацию и не иметь аргументации, кроме "сам дурак", "я профессионал", это просто нонсес какой то. Цитата Ссылка на сообщение Поделиться на других сайтах
KorAngar 1 Опубликовано: 7 февраля 2015 Рассказать Опубликовано: 7 февраля 2015 (изменено) Ну коли разговор уже перешел в чистый холивар то можно и продолжить. Конечно говорили. Особенно недопрограммисты, которые пишут свои продукты на фреймоворках, а не с использованием нативного языка. Это самое распространенная фраза, среди тех кто способен только читать книжки. Лично я предпочитаю делать свои продукты исключительно на нативном коде, и писать нужные алгоритмы с нуля. а нет путем подключения готовых написанных кем то функций из фреймворка. Поэтому ваше сообщение не ново, передо мной очередной "гуру модного кода", коих сотни тысяч. Недопрофессионалы, недопрограммисты и другие недо, которые считают что они гуру кода, это целое явление нашего мира. Фреймворки кстати и пишут именно для этих "недо", и неплохо при этом зарабатывают, и я лично рад, за тех кто зарабатывает на этих "недо". Но DLE выбирают не для того чтобы наслаждаться "модностью кода", а потому что работает быстрее, качественнее и потребляет несравнимо ресурсов. Вы конечно мастер делать поспешные ни на чем не основанные выводы но давайте разберем. Вы явно переоцениваете роль фреймворков. Есть конечно которые собой пытаются заменить весь язык (читать как jQuery к примеру) но они к нам не относятся. Писать все с 0 похвально для изучения или написания более правильных/производительных/т.п. систем но увы вы делаете с точностью да наоборот. Ваше изречение можно отнести к джуниору разве что. Знаете когда я только начинал у меня были похожие мысли и подобный максимализм. К слову ранее не было ни слов или намекана гуру кода это уже ваш пунктик. О своем опыте и знаниях вы сами рассказали в этой теме более чем достаточно. Если вы думали что это вызовет у меня большее уважение к вам, то это заблуждение, наоборот я понимаю почему так страдает качество любых гос. учреждений. Не считаю хвастовство с вашей стороны, чем то достойным уважения. Уважение мне от вас ненужно никаким боком. Я лишь противопоставил вашему "И в отличие от вас мои выводы основаны на фактах по работе с клиентами и администраторами сайтов. Администраторы сайтов DLE в своем большинстве, не то что не программисты и не системные администраторы серверов, а даже зачастую не вебмастера.". Не более того. Но вас видимо это зацепило сильно. Лично я посмотрел и сразу понял о чем идет речь. А чем вы хвастаетесь, в том что родили в своей голове для себя "кумира", и сами им наслаждаетесь, и хотите чтобы другие им наслаждались? Нет уж увольте, я глупостями заниматься не намерен. Мне нужно делом заниматься. Увольте но вы занимаете сейчас именно глупостями. Кумир? Да не в жизни. Лишь объективный факт их превосходства перед массой который никак не говорит о моем фанатизме к ним. А вы судя по всему не осилили разобраться в коде этих "кумиров" что так кидаетесь на них. Не обязательно их использовать что бы изучить и вынести от туда хорошие наработки. То что просит клиент и покупатель это правда. Я всегда прислушиваюсь к таким просьбам. И если они действительно являются важными и нужными, всегда стараюсь их реализовать по мере сил. Но если они основываются на "лени" конретного человека, и могут привести к проблемам других, то нет уж увольте, я этого делать никогда не буду. т.е. у вас не хватает сил потратить 5 минут на то что бы добавить никак не вредящую и полезную отдельным пользователям функциональность? С ваших слов большинство из них не админы тогда еще более непонятно к чему вы тут устроили бардак вместо того что бы делом заниматься. Собственно на этом и откланяюсь. Хорошо видно насколько вы застряли в своем болоте. п.с. Вообще это нонсенс что администрация сказывается до холиваров а не делом занимается. Детсад какой то. О каком вообще опыте работы с клиентами выговорите. Идите работать. Изменено 7 февраля 2015 пользователем KorAngar Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 081 Опубликовано: 7 февраля 2015 Рассказать Опубликовано: 7 февраля 2015 Писать все с 0 похвально для изучения или написания более правильных/производительных/т.п. систем но увы вы делаете с точностью да наоборот. Аргументируйте свое утверждение. Что сделано в DLE неправильно и менее производительно, чем может быть? Я готов выслушать и принять любое мнение аргументировано с профессиональной точки зрения Уважение мне от вас ненужно никаким боком. Я лишь противопоставил вашему "И в отличие от вас мои выводы основаны на фактах по работе с клиентами и администраторами сайтов. Администраторы сайтов DLE в своем большинстве, не то что не программисты и не системные администраторы серверов, а даже зачастую не вебмастера.". Не более того. Но вас видимо это зацепило сильно. Здесь речь идет о клиентах DLE. И о интересах клиентов DLE. И собственно о них я писал, и писал о том что мне лучше вас известно о том что может повредить клиентам DLE, а что нет. И это факт, вам не может быть лучше об этом известно, потому как работаю с ними я, а не вы. Я же не писал что я лучше знаю вас о мировоззрении. Нет я написал что я лучше знаю о конкретном продукте, кто им пользуется, и соответственно я точно знаю, что реализация того что написал автор топика, повредит другим пользователям DLE, и повредит с большой долей вероятности. Лишь объективный факт их превосходства перед массой который никак не говорит о моем фанатизме к ним. Любой адепт секты всегда говорит об "обьективности" основываясь лишь на "субьективности". Даю добрый совет, завязывайте с этим, это действительно признак фанатизма. А фанатизм зло априори. И чем глубже вы будете погружаться в это, тем сложнее вам будет вырваться от этого. А вы судя по всему не осилили разобраться в коде этих "кумиров" что так кидаетесь на них. Не обязательно их использовать что бы изучить и вынести от туда хорошие наработки. Да бог с вами, я нигде не кидался на их код, и нигде не говорил что он плох. Нормальный код, нормальная реализация. Только эта реализация сделана для других целей. Это реализация для того чтобы можно было сделать на PHP определение IP если есть прокси и нет настроек бэк сервера. Плох не код фреймворка. Плоха сама концепция, когда бэк сервер не настроен на прямую на работу с прокси. Вот проблема. Зло использовать костыли, когда нужно делать правильно. Правильной концепцией является настройка бек сервера, а не написание костылей на PHP. Поэтому я и пишу, следуйте правильной концепции, настройте сервер, а не ожидайте сделанного на PHP "костыля". В фрейворке сделан "костыль", для того чтобы не настраивать сервер. Любой фреймворк это по сути своего рода "костыль", вот вам функция для этого, вот вам для другого и т.д. это вообще назначение фреймворков, создавать костыли для работы. Сам код фрейворка нормальный, и то что фрейворк дает костыли, это тоже нормально, потому как фреймворк делается для программистов, а программист делает программу под конкретные условия конкретного сервера, например отсутствие настроек бэк сервера. А не нормальным является применять костыли там, где должна быть правильная настройка сервера. Я же работаю над конечным продуктом, а не над фреймворком, моя задача дать людям продукт, который будет безопасен и прост для всех. И для программиста и системного администратора, и для домохозяйки. И я никогда не подставлю под удар домохозяйку ради прихоти и лени системного администратора. И в приоритете для меня заставить системного администратора заняться его прямыми обязанностями и корректно настроить сервер. т.е. у вас не хватает сил потратить 5 минут на то что бы добавить никак не вредящую и полезную отдельным пользователям функциональность? Сил хватает, нет желания ставит под удар других пользователей скрипта, которым эта функциональность может принести угрозу. Поэтому лучше я потрачу еще больше сил и времени, и заставлю системного администратора выполнять свои прямые обязанности и произвести правильную настройку сервера. Что такое symfony? Это инструмент для программиста, где доверительный траст создает программист и он определяет условия для траста. Что такое DLE? Это готовый продукт не для программиста, не может администратор сайта создавать доверительный траст, соответствующий базовым требованиям безопасности, это не его уровень доверия. Не может быть то что дозволено программисту также быть дозволено другому лицу. Не может администратор сайта быть лицом определяющим уровень доверия на уровне сервера, т.е. не может обладать тем же уровнем доверия что и системный администратор. Это небезопасно. И вы просто не понимаете этой разницы. Не понимаете разницы между программистом, системным администратором сервера и просто администратором сайта. Для вас это одно и тоже лицо. А это разные лица. Это тоже самое что разрешить например незарегистрированным посетителям сайта писать в комментариях любой HTML код и даже PHP код и выполнять его и надеятся на то что этот незарегистрированный посетитель никогда не напишет в комментарии зловредный код.Между фреймворками и конечными продуктами существует огромная разница между уровнями траста (доверия). Во фреймворках траст находится на уровне программиста, именно он дальше пишет конечный продукт, и он определяет как должно работать приложение. В конечном продукте траст находится на уровне администратора сайта, и не может администратор сайта быть доверительным в вопросах, которые находятся выше его компетенции, т.е. в компетенции настроек сервера. Прокси это уже компетенция настроек сервера, и не может человек по определению обладающим меньшим уровнем доверия, обладать доступом к тому что требует большего уровня доверия. Это базовый принцип построения безопасного приложения. А вы в своем стремлении восхвалять код фреймворка уровняли все уровни доверия и прировняли администратора сайта к администратору сервера, дав им один и тот же уровень доверия. Так и создаются совершенно не безопасные приложения, когда не происходит даже базового разделения ролей и уровней доверия. 3 Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.