To eSupport.org.ua:
Я своё мнение высказал ранее. А спорить не намерен.
ClayRabbit wrote: "Но реальность такова, что (в случае наиболее часто использующейся сейчас с CPanel модели обеспечения php-безопасности) файл .htpasswd с правами 644, помещенный в папку /home/user/public_html/dir/ находится в безопасности, а если вы поместите его в созданный вами /home/user/dir/ - его сможет прочитать любой пользователь сервера."
-- Вот в том то и дело, что модель "безопасности", которую избрали для сПанели, диктует эту самую реальность...
Разумеется, Вы вольны считать так, как считаете. И даже обвинять кого угодно в некомптентности суждений. Но и я тоже имею точно такие же права, особенно на форумах :)
ClayRabbit wrote: "потенциальной уязвимости в DirectAdmin, на которую я попытаюсь обратить внимание разработчиков"
-- Вот-вот... Желаю Вам удачи в этом деле.
Обвинять хостера у меня нет оснований. Ибо я сразу же исследовал ситуацию и пришел совершенно к определённым выводам, существенную для инет-общественности часть которых опубликовал в топике.
ClayRabbit, Вы случайно не причастны к разработке сПанели? :)
В ЗАКЛЮЧЕНИЕ. Краткие замечания:
1. Давно замечено: когда нечего сказать по существу вопроса, в публичных дискуссиях начинаются подначки и софистика. Как всё это старо и надоело!..
2. Если даже на "грошовом" шареде можно довольно легко залезть к "соседу" и почитать/переписать у него скрипты, это НИКАК нельзя считать нормальной практикой "безопасности", на которую можно де закрывать глаза!
3. Вот ведь какая "мудрая" и очень старая корпоративная политика наблюдается чуть ли не повсеместно в этом секторе услуг:
- "Взлом? - юзерские скрипты виноваты!"
- "Взлом через предустановленные скрипты-сервисы? - да, бывает, но изготовители патчат свои изделия!"
Заявление и обобщение это отнюдь не голословно. Ибо многие люди в интернете подмечали то же самое, не говоря о царящем и здесь таком же духе.
Вот хотя бы выборка извне навскидку:
Пример 1. Yurik wrote: "...хостеры факт что у них можно читать чужие файлы спихивают на то что а кто вам виноват что вы используете ПХП" - см.
http://phpclub.ru/talk/showthread.php?post...5296#post315296 (пунктуация сохранена авторская).
Пример 2: ForJest wrote: "...Неведние выгодно хостерам в первую очередь. Типа - а вдруг пронесёт и к нам не пожалует тот самый военный программер. А так получается что на коленке пишут ламе... т.е. начинающие программисты для заказчиков, которые вообще ни сном не духом о возможных проблемах. А мы таки да продадим электричество, которое жрёт сервер за $2500 в месяц и будем счастливы..." (см.
http://phpclub.ru/talk/showthread.php?post...6778#post316778 - цитата чуть подредактирована мною для внятности и связности мысли).
ТЕПЕРЬ О БОЛЕЕ СЕРЬЁЗНОМ И ВАЖНОМ.
Человеку думающему и знающему специфическую среду, представляющую собой Интернет, известны характерные приёмы, которыми пользуются хакеры. Тот специфический "дух" хакерства таким людям также хорошо знаком, что позволяет узнавать детали и решения, способные оказаться хакерскими (и потому потенциально или реально опасными для прочих в Интернет).
Вот например, ClayRabbit wrote: "...без safe_mode они ничего не гарантируют, разве что если все exec()-подобные функции начисто запретить. Но тогда еще симлинки останутся... Т.ч. safe_mode + safe_mode_exec_dir + в апаче запрещаем FollowSymLinks и оставляем только SymLinksIfOwnerMatch (При етом, к сожалению, приходится исключать Options из AllowOverride, что, в частности, ведет и к невозможности использовать в .htaccess php-директивы). А шо делать... Без этого можно чужие пхп-скрипты через симлинку апачем брать..." (см.
http://phpclub.ru/talk/showthread.php?post...211#post321211), а далее оппонент спрашивает его: "Apache не может "утянуть" скрипт, он его может выполнить, что он и так постоянно делает. Для этого по линкам ходить не обязательно" (что само по себе конечно верно, комментирую я этот пассаж). Однако далее ClayRabbit отвечает на это оппоненту: "Да что вы говорите? В том и дело, что в большинстве случаев - запросто. Достаточно "RemoveType php" прописать в .htaccess - на своем, а симлинк - на чужой каталог (...) Еще надежнее - сделать симлинк не на папку, а сразу на файл (...) забудем про .htaccess Можно и без него. Выполните "ln -s /путь/к/чужому/файлу/config.php readme.txt" (Естественно на config.php должны стоять права 644, например.) И откройте readme.txt браузером c вашего сайта..." (см. серию постингов на
http://phpclub.ru/talk/showthread.php?post...1627#post321627 и ....#post321634, ....#post321640, ....#post321646).
Для чего я привёл здесь этот диалог? Для того, чтобы показать "дух", присущий типичным хакерским приёмам...
А теперь посмотрим на "решение", которое применено и МАССОВО ТИРАЖИРУЕТСЯ разработчиками сПанели при открытии каждого эккаунта. Они вместо того, чтобы использовать СТАНДАРТНЫЕ средства конфигурирования Апачи, позволяющей иметь алиас на урл вида: www.sitename.ru (помимо чистого хоста sitename.ru), используют симлинк папки public_html как алиас "www" в домашней директории юзера на серваке... Чем не хакерское по духу (и непонятно, чего ради!) сомнительное "решение"... между прочим, имеющие серьёзные последствия и тянущее за собою и другие подобные же решения сомнительного свойства!
Или вот взять ещё технические детали, что доступны там же в ПХП-клубе:
fixxxer wrote: "Safe Mode - вполне себе решение проблем. Просто тут надо подходить с некоторой изобретательностью, а не тупо манипулируя On/Off-ами. Хотя, все решения уже общеизвестны и повсеместно используются..." (см.
http://phpclub.ru/talk/showthread.php?post...789#post351789)anight wrote: "Поправляю - не единственное. Проще и правильнее (imho) использовать apache2 + mod_fastcgi remote. MPM - perchild и кол-во запущенных apache для каждого VH должно совпадать с кол-вом запущенных php-fastcgi (разумеется с тем же uid/gid)..." (см.
http://phpclub.ru/talk/showthread.php?post...759#post351759) "...по сравнению с преимуществами технологии - overhead можно вообще не учитывать. мне кажется php fastcgi будет всего на 0-10% медленнее mod_php." (см.
http://phpclub.ru/talk/showthread.php?post...919#post351919).
С последними двумя утверждениями в этих постингах вполне можно согласиться, и грамотное использование таких средств, а не тех сомнительных тех. решений - это и есть правильный путь, не ведущий к уязвимостям...
Так вот, что я всем этим (и прочим в этой теме) хотел сказать.
Проблемы истинные начинаются там и тогда, если люди хотят совместить в одном месте и в одном решении несоединимое. Например, наивысшую призводительность со способностью и возможностю "исполнять всё" (чуть ли не любые юнкс-приложения*, а не спектр операций, предусмотренный _функциями языка_, и ограниченный возможностями и ЗАЩИТОЙ языков программирования). Да ещё и современной широкой доступностью на шаред-хостинге максимального числа сервисов, включая потенциально и даже реально опасные. А если ещё при этом легче лёгкого собрать информацию об индивидуальных особенностях данного хостера/сервера и об его клиентах, то о безопасности можно вообще забыть!.. (Любой хак начинается с исследования объекта!) И это - при явной целевой ориентированности всех шаредов на максимально публичный, след-но, и максимально уязвимый для вторжения сегмент интернет-доступа к данным!
Примечания:
* на мой взгляд, разрешать на шареде исполнять из перл/пхп скриптов что-то (особенно произвольное и непроверенное) из исполняемого юникс-кода - это означает открывать ворота настежь в своём доме... и если заказчику хоста и владельцу подобных скриптов нужны такие фишки - ему прямой путь, как минимум, на виртуальный дедик!.. (Моя реплика в скобках: а вот лицемерные попытки некоторых хостеров "выгнать" на дедик клиентов, требовательных к сохранности/приватности данных, - наглость и профессионональная несостоятельность!)
Вкратце резюмирую.
- В общем и целом, всё ОК!, - говорят (явно или косвенно) господа хостинг-провайдеры, особенно реселлеры. А вот "технари" разрабатывают решения, снимающие и для шареда известные проблемы, которые в основном связаны с погоней за высшей производительностью и "экономичностью" хостинга. (Потому что если таки не гнаться за выжимкой последних процентов производительности, то давно уже есть решения, вполне приемлемые всем.)
Беда в том, что скажем усовершенствования технологий, применимых в апачи или пхп, не означает автоматического продвижения этих решений в массы хостинг-провайдинга, тем более, с полной пользой. Ибо как управляющая надстройка над серверами и языками программирования (которые тоже конфигурируются) есть ещё "менеджер виртуальных хостов". От него, работающего фактически с правами (возможностями) админа сервера (имея полномочия делать... очень многое... во всех эккаунтах виртуального сервера, что вполне естественно), который и конфигурирует автоматически виртуальные хосты, многое на шареде как раз зависит. Именно от подобного автоматизированного администратора на самом деле очень и очень многое зависит - пожалуй, прежде всего предпосылки качества, устойчивости от взломов и робастности (чтобы не падал :) в эксплуатации всего данного хостинга.
А ведь решения эти зависят по большей части уже не от конкретного хостинг-провайдера, особенно "мелкого" (реселлера), которые едва ли смогут и будут "копаться" в купленном коммерческом ПО или даже более тщательно, со знаем и выдумкой, индивидуально конфигурировать оное, если надо, отходя от фирменной инструкции. След-но, они зависят... от всё тех же разработчиков, хотя бы той же сПанели!..
Но понимать и учитывать этого, похоже, в обозначенных кругах в упор не желают!..
Ну что ж, господа, пребывайте в подобной круговой поруке и недальновидности и далее.
Пользуясь случаем (ибо едва ли он представится мне ещё) выскажу также вот такое своё наблюдение.
Как раз в последние годы в связи с бурным развитием реселлерства наблюдается отвратительное явление: на сайтах этих хостинг-провайдеров чаще всего днём с огнём не найти достоверной и исчерпывающей информации об особенностях данного хостинга, настройках сервера, инструкции по использованию разрешенных сервисов, указания о том, что ЗДЕСЬ что-то принципиально запрещено, и всё прочее, что лет 10-6 назад составляло НЕПРЕМЕННЫЙ перечень информации, вывешиваемой на сайте любого хостинга. Это - признак неблагополучия и неуважения к своим будущим или случившимся клиентам, ведь подбирая хостинг клиент (если он не глубокий чайник!) естественно желает и должен узнать подобные особенности ДО* заказа хостинга! И это явление не случайное и единичное, а весьма массовое (в этом сегменте рынка). И оно косвенно, а может быть и системно, "идеологически" навязано "автоматизаторами" типа фирм-разработчиков сПанели и иже с ними... (Через политику ведения подсистемы "Помощь".)
* примечание: иначе не может не реализоваться по полной программе юзерский "афоризм" - "Выбор хостинга - это также как выбор жены: до свадьбы она одна, после свадьбы - другая..." %;=)))
И в заключение. Здесь в топике и на протяжении темы я более чем достаточно (конечно для умеющего и желающего думать непредвзято) сказал откровенно и публично. Но когда "не внемлют и не разумееют"... Что ж, отряхнув прах со ступней ног, закрываю дверь с наружной стороны.