Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 60 Ответов
  • 10372 Просмотров
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
Уже долгие годы существует Joomla и сообщество. Годы идут, а самые элементарные вещи не сделаны.

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

Код
images
logs
tmp
backup

есть еще и папки которые можно вообще от просмотра закрывать, к примеру

Код
backups

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

Вот не понимаю почему давно их не добавили в инсталляцию, странно это.

Для понимания речь не идет о бейсик авторизации, речь об закрытии папок которые используют сторонние расширения и в основном такие как не свой редактор и медиа менеджер, те которые несут непосредственную угрозу.
Еще не путаем
Код
Options -Indexes
он на просмотр закрывает, а самый простой пример на не выполнение скриптов
Код
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>

Каждый высказывает свое мнение и добавляет от себя что считает необходимым.
« Последнее редактирование: 10.06.2014, 12:33:32 от b2z »
*

wishlight

  • Живу я здесь
  • 4980
  • 293 / 1
  • от 150 руб быстрый хостинг без блокировок
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Звучит логично, но должны быть на 100% уверены, что images, logs и tmp не используются разработчиками для исполнения скриптов.
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
Звучит логично, но должны быть на 100% уверены, что images, logs и tmp не используются разработчиками для исполнения скриптов.
Многие не используют, все давно за всех продумано, это не бейсик авторизация и при установке из системы можно если они будут мешать их "отключать/удалять" и после загрузки расширения "включать/создавать".

Папки tmp и logs можно вообще выносить за пределы движка, это допускалось и допускается в системе.

Про логи вообще другая басня, называю такое "на хрена козе баян", логов в самой Joomla не было и нету и зачем их вывод нужен не понятно, а папка есть и вкл/выкл плагина есть. Мое видение так вообще или сделать подробное логирование, что сами дописываем постоянно или убрать вообще логирование ошибок из движка.
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Про логи вообще другая басня, называю такое "на хрена козе баян", логов в самой Joomla не было и нету
Как это нет? Логи есть. Расширения туда логируют и Joomla тоже логирует.
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
Как это нет? Логи есть. Расширения туда логируют и Joomla тоже логирует.
Да но логируется не то что хотелось бы в них видеть. На счет папки logs и tmp выше написал их можно вынести за ядро.
*

draff

  • Гуру
  • 5803
  • 434 / 7
  • ищу работу
+ еще бы по умолчанию отключенная регистрация пользователей
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
+ еще бы по умолчанию отключенная регистрация пользователей
это да, многие не используют сайты с регистрацией, а кому она нужна могут включить её
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
это да, многие не используют сайты с регистрацией, а кому она нужна могут включить её
Давайте не будем все в одной теме обсуждать...
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Да но логируется не то что хотелось бы в них видеть. На счет папки logs и tmp выше написал их можно вынести за ядро.
Сейчас Joomla сделана так, что все находится рядом. Все "выносы" делаются ручками, а значит logs и tmp должны остаться на месте.
*

verstalshik

  • Завсегдатай
  • 1754
  • 95 / 1
Полностью ЗА
+ убрать из папки images папку banners
+ убрать все, что содержит слово banners - названия позиции, классы и тд. и еще есть целый набор слов, которые надо выжечь каленым железом.
очень это все портит жизнь верстальщикам))), чьи клиенты пользуются AdBlock и иже...
❶ НЕ СПРАВЛЯЕШЬСЯ САМ???  Поможем тут...  ❷ Калькулятор доставки - ЗАКАЖИ!!!...  ❸ Каталог компаний - ЖМИ!!!...  ❹ НОВИЧКИ! ВСЕ сюда! Первая консультация БЕСПЛАТНО!!
*

voland

  • Легенда
  • 11031
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Полностью поддерживаю.
Насчет папок logs и tmp - вроде бы путь к ним указывается в конфиге и выносить можно без хаков.
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
+ убрать из папки images папку banners
+ убрать все, что содержит слово banners - названия позиции, классы и тд. и еще есть целый набор слов, которые надо выжечь
Это отдельный разговор.

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

Мы обсуждаем вот это:

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

images
logs
tmp

Я правильно понял, что предлагается такой .htaccess:
Код: ini
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>

И еще - наличие .htaccess не может как-то спровоцировать ошибку сервера?
*

voland

  • Легенда
  • 11031
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Я правильно понял, что предлагается такой .htaccess:
Код: ini
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>


И еще - наличие .htaccess не может как-то спровоцировать ошибку сервера?

Хороший вопрос.
Nginx и майкрософтовский сервер просто проигнорируют.
А вот апач с запрещенными пользовательскими директивами теоритически вроде может.. или нет?
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
Мы обсуждаем вот это:

Я правильно понял, что предлагается такой .htaccess:
Код: ini
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>

И еще - наличие .htaccess не может как-то спровоцировать ошибку сервера?


да обсуждаем именно закритие на выполнение скриптов РНР в папках

код htaccess надо изначально сформировать и обсуждать он может быть другим

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

@b2z
на счет logs & tmp просто объяснил что они перенаправляться могут и так на высказывание
Звучит логично, но должны быть на 100% уверены, что images, logs и tmp не используются разработчиками для исполнения скриптов.
в них можно добавлять htaccess, а также и выносить за пределы ядра

Обсуждать это не будем обсуждаем конкретно вот это:
в папки
Код
cache
administrator\cache\
cli - если не помешает
media - если не помешает
htaccess с содержимым
Код
deny from all
в папки
Код
images
logs
tmp
htaccess с содержимым
Код
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>
или
Код
<IfModule mod_php5.c>
  php_flag engine 0
</IfModule>
или
Код
php_flag engine  off
RemoveHandler .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml
AddType application/x-httpd-php-source .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml

вариантов несколько и их можно объединить топик создавали давно и описали самые востребованные тут


Собирать код надо совместно с разработчиками тут что то закрывать надо на выполнение либо отключать вообще. Вот краткое описание что в основном требуется.

Код

php_flag engine 0
AddType "text/html" .php .cgi .pl .fcgi .fpl .phtml .shtml .php2 .php3 .php4 .php5 .asp .jsp


# Отключаем PHP.
RemoveType php


<IfModule mod_php4.c>
  php_flag engine 0
</IfModule>

<IfModule mod_php5.c>
  php_flag engine 0
</IfModule>


# запрет на запуск файлов
RemoveHandler .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml
AddType application/x-httpd-php-source .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml

# запрет доступа к файлам
Order Deny, Allow
Deny from all
« Последнее редактирование: 10.06.2014, 14:53:47 от flyingspook »
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
Хороший вопрос.
Nginx и майкрософтовский сервер просто проигнорируют.
А вот апач с запрещенными пользовательскими директивами теоритически вроде может.. или нет?

Голый Nginx да, но это не относится к сайту вообще, у него нет настроек кроме как на сервере конфиг писать, мы его не затрагиваем.
На голом мало кто сайты юзает это не массово, надо быть немного в теме что бы его настроить, основная масса сайтов на связке работают Nginx + Apache

В дистрибутиве тоже htaccess есть если что  ;D и он ни как не рассчитан на Nginx
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
Вот как вариант закрыть содержание папки с правами 777 на просмотр и работу с ней, есть такое решение не новое и отрабатывает полностью.
Код
<IfModule mod_authz_host.c>
    Deny from all
</IfModule>
Оно полностью рабочее.
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
Options может приводить к ошибке
извиняюсь скопипастил, исправил  ;D

Как замена может выступить.

Код
DirectoryIndex index.html index.htm index.php

Но не везде сработает, папки на листинг вообще надо закрывать на стороне сервера, это намного правильнее.

Самый простой проверенный и верный это файл index.html в каждой папке и если на сервере что то с настройками даже случится все равно содержимое папки ни кто не увидит. Но увы не во всех папках его увидишь как было, есть и видимо будет, тут уж самим его размещать ручками в нужные папки приходилось и придется.  ;D
« Последнее редактирование: 10.06.2014, 15:01:35 от flyingspook »
*

darkghost

  • Живу я здесь
  • 2212
  • 97 / 0
Полностью ЗА
+ убрать из папки images папку banners
+ убрать все, что содержит слово banners - названия позиции, классы и тд. и еще есть целый набор слов, которые надо
целиком поддерживаю! Только за! Приходится в ручную мудрить защиту этих папок (запрет на выполнение скриптов), а вот с banners --- особый разговор
*

PaLyCH

  • Давно я тут
  • 956
  • 146 / 19
  • Менеджер проектов

а самый простой пример на не выполнение скриптов
Код
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>

Это правильное решение, которые реально работает в плане безопасности. При этом его положить во все папки, акромя /administrator

 Но у него есть один подводный камень. Например есть модуль AJAX поиска товаров, который вызывает выполнение скрипт, например /modules/mod_search_ajax/ajax.php. То этот поиск не будет выполнен. Решается простым путем. В папку /modules кладется выше описанный htaccess, а в папку с модулем -
Код
[code]<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
allow from all
</Files>
[/code]


Таким образом безопасность будет на уровне
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Папки tmp и logs можно вообще выносить за пределы движка, это допускалось и допускается в системе.

Про логи вообще другая басня, называю такое "на хрена козе баян", логов в самой Joomla не было и нету и зачем их вывод нужен не понятно, а папка есть и вкл/выкл плагина есть. Мое видение так вообще или сделать подробное логирование, что сами дописываем постоянно или убрать вообще логирование ошибок из движка.
По поводу логов - лучше первое (подробное логирование), а еще лучше настраиваемое логирование - каждый сам для себя выберет необходимый уровень наполнения логов.
По поводу темпа - имхо, нельзя из движка, т.к. инсталл/апдейт всего через него проходит (оч.подробно разбирал работу com_installer, там абсолютно все через темп).

Да но логируется не то что хотелось бы в них видеть. На счет папки logs и tmp выше написал их можно вынести за ядро.
Логи есть. Расширения туда логируют и Joomla тоже логирует.
Имхо, это бред а не логи. Кто знаком с логами сквида, меня поймет.

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

+ убрать из папки images папку banners
+ убрать все, что содержит слово banners - названия позиции, классы и тд. и еще есть целый набор слов, которые надо выжечь каленым железом.
очень это все портит жизнь верстальщикам))), чьи клиенты пользуются AdBlock и иже...
Когда ставлю клиентам машину (новую или после ремонта с переустановкой оси), adblock изначально настраиваю в параноидальный режим (рубить все, в т.ч. соц.сети ;) (шютка)). Я бы баннеры за ядро выпилил поставлял бы отдельно (не люблю рекламу).

Я правильно понял, что предлагается такой .htaccess:
Код: ini
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>
И еще - наличие .htaccess не может как-то спровоцировать ошибку сервера?
Хороший вопрос.
Nginx и майкрософтовский сервер просто проигнорируют.
А вот апач с запрещенными пользовательскими директивами теоритически вроде может.. или нет?
Имхо, решаемо все, не на уровне .htaccess, так на уровне ядра. Апач (денвер) это понимает, только тормозить стал резко.
.htaccess можно пихать куда угодно, хоть в каждой папке настраивай. На битриксе наблюдал - там во всех публичных папках целые простыни иногда ваяют.

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

Ну и как всегда одно из самых больных мест - роутер. Обещанное можно ждать, но так и не дождаться, в каких планах и когда - вопрос остается открытым.
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Это правильное решение, которые реально работает в плане безопасности. При этом его положить во все папки, акромя /administrator

 Но у него есть один подводный камень. Например есть модуль AJAX поиска товаров, который вызывает выполнение скрипт, например /modules/mod_search_ajax/ajax.php. То этот поиск не будет выполнен. Решается простым путем. В папку /modules кладется выше описанный htaccess, а в папку с модулем -
Код
[code]<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
allow from all
</Files>
[/code]


Таким образом безопасность будет на уровне
Взял на заметку, поднял себе в топ ближайших задач
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Цитировать
Мы обсуждаем комплексное решение по оптимизации движка кмс, безопасность + удобство старта + повышение гибкости общего конфигурирования.
Нет, поэтому предлагаю не оффтопить. Уже сейчас наичинается сложность с отслеживанием постов по теме.

Я так понял, что примерно определились:

Предложение включить в папки /administrator/cache, /cache, /images, /logs, /media и /tmp дистрибьютива файл .htaccess со следущим содержимым:
Код: ini
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>
*

PaLyCH

  • Давно я тут
  • 956
  • 146 / 19
  • Менеджер проектов
Нет, поэтому предлагаю не оффтопить. Уже сейчас наичинается сложность с отслеживанием постов по теме.

Я так понял, что примерно определились:

Предложение включить в папки /administrator/cache, /cache, /images, /logs, /media и /tmp дистрибьютива файл .htaccess со следущим содержимым:
Код: ini
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>
Не совсем верно, как я писал выше - положить такой файл во ВСЕ папки, акромя /administrator
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
Я так понял, что примерно определились:

Предложение включить в папки /administrator/cache, /cache, /images, /logs, /media и /tmp дистрибьютива файл .htaccess со следущим содержимым:
Код: ini
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>
не совсем правильно
в /administrator/cache, /cache
Код
deny from all
в остальные папки кроме /administrator
Код
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>
*

flyingspook

  • Живу я здесь
  • 3590
  • 247 / 9
точнее даже может получится так
Код
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>

# запрет на запуск файлов
RemoveHandler .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml
AddType application/x-httpd-php-source .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml

это надо уже конкретно рассматривать на орг форуме с разработчиками
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
в /administrator/cache, /cache
Код
deny from all
в остальные папки кроме /administrator
Код
<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
deny from all
</Files>
# запрет на запуск файлов
RemoveHandler .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml
AddType application/x-httpd-php-source .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml
+ решение от Палыча:
В папку /modules кладется выше описанный htaccess, а в папку с модулем -
Код
[code]<Files ~ "\.(php|php3|php5|php4|phtml|htm|shtml)$">
allow from all
</Files>
[/code]
Таким образом безопасность будет на уровне

Ничего не пропустил?
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Лично я против костылей. Пользователи ничего дополнительно не должны создавать, чтобы у них что-то заработало. И уверен, что на такое не пойдут. Это я про AJAX.
*

PaLyCH

  • Давно я тут
  • 956
  • 146 / 19
  • Менеджер проектов
Лично я против костылей. Пользователи ничего дополнительно не должны создавать, чтобы у них что-то заработало. И уверен, что на такое не пойдут.

Костыль? ты про что именно?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться