Notice: Constant EZSQL_VERSION already defined in /var/www/private_1/data/www/linuxguru.ru/wp-content/db.php on line 43

Notice: Constant object already defined in /var/www/private_1/data/www/linuxguru.ru/wp-content/db.php on line 48

Notice: Constant OBJECT_K already defined in /var/www/private_1/data/www/linuxguru.ru/wp-content/db.php on line 53

Notice: Constant ARRAY_A already defined in /var/www/private_1/data/www/linuxguru.ru/wp-content/db.php on line 58

Notice: Constant ARRAY_N already defined in /var/www/private_1/data/www/linuxguru.ru/wp-content/db.php on line 63

Deprecated: Assigning the return value of new by reference is deprecated in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/db-cache-reloaded-fix/db-module.php on line 214

Notice: Constant EZSQL_VERSION already defined in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/db-cache-reloaded-fix/db-module.php on line 43

Notice: Constant object already defined in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/db-cache-reloaded-fix/db-module.php on line 48

Notice: Constant OBJECT_K already defined in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/db-cache-reloaded-fix/db-module.php on line 53

Notice: Constant ARRAY_A already defined in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/db-cache-reloaded-fix/db-module.php on line 58

Notice: Constant ARRAY_N already defined in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/db-cache-reloaded-fix/db-module.php on line 63

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /var/www/private_1/data/www/linuxguru.ru/wp-includes/wp-db.php on line 1633

Deprecated: Assigning the return value of new by reference is deprecated in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/db-cache-reloaded-fix/db-cache-reloaded.php on line 91

Notice: add_option was called with an argument that is deprecated since version 2.3.0 with no alternative available. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 4026

Notice: add_option was called with an argument that is deprecated since version 2.3.0 with no alternative available. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 4026

Deprecated: Assigning the return value of new by reference is deprecated in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/smilies-themer/smilies-themer.php on line 80

Deprecated: Assigning the return value of new by reference is deprecated in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/smilies-themer/smilies-themer.php on line 213

Notice: get_settings is deprecated since version 2.1.0! Use get_option() instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3831

Notice: get_settings is deprecated since version 2.1.0! Use get_option() instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3831

Notice: add_custom_background is deprecated since version 3.4.0! Use add_theme_support( 'custom-background', $args ) instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3831

Notice: The called constructor method for WP_Widget in Suffusion_Search is deprecated since version 4.3.0! Use
__construct()
instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3894

Notice: The called constructor method for WP_Widget in Suffusion_Meta is deprecated since version 4.3.0! Use
__construct()
instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3894

Notice: The called constructor method for WP_Widget in Suffusion_Follow_Twitter is deprecated since version 4.3.0! Use
__construct()
instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3894

Notice: The called constructor method for WP_Widget in Suffusion_Category_Posts is deprecated since version 4.3.0! Use
__construct()
instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3894

Notice: The called constructor method for WP_Widget in Suffusion_Featured_Posts is deprecated since version 4.3.0! Use
__construct()
instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3894

Notice: The called constructor method for WP_Widget in Suffusion_Google_Translator is deprecated since version 4.3.0! Use
__construct()
instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3894

Notice: The called constructor method for WP_Widget in Suffusion_Subscription is deprecated since version 4.3.0! Use
__construct()
instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3894

Notice: The called constructor method for WP_Widget in Suffusion_Flickr is deprecated since version 4.3.0! Use
__construct()
instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3894

Notice: The called constructor method for WP_Widget in Suffusion_Query_Users is deprecated since version 4.3.0! Use
__construct()
instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3894

Notice: The called constructor method for WP_Widget in Suffusion_Child_Pages is deprecated since version 4.3.0! Use
__construct()
instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3894

Notice: load_plugin_textdomain was called with an argument that is deprecated since version 2.7.0 with no alternative available. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 4026

Notice: get_settings is deprecated since version 2.1.0! Use get_option() instead. in /var/www/private_1/data/www/linuxguru.ru/wp-includes/functions.php on line 3831
Фикс уязвимости с symlink в nginx ispmanager
Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971

Notice: Array to string conversion in /var/www/private_1/data/www/linuxguru.ru/wp-includes/formatting.php on line 971
 

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/wp-code-highlight/wp-code-highlight.php on line 68

Многие «админы» знают эту проблему не понаслышке, особенно это относится к начинающим хостерам которые как ни странно почти все дырявые в прямом смысле этого слова, печально досадно но ладно =(

До недавнего времени существовала уязвимость в nginx связанная с симлинками, странно что столько времени она оставалась не замеченной и не привлекала к себе внимания. К сегодняшнему дню все изменилось nginx наконец то поправили — теперь он умеет не ходить по симлинкам вообще или проверять владельца, линк на новые директивы

http://www.nginx.org/ru/docs/http/ngx_http_core_module.html#disable_symlinks

в первую очередь проблема касалось хостеров т.к nginx как правило работает под 1 юзером www-data или как там у вас, поэтому пользователь мог создать символическую ссылку с названием например 1.css на какой либо интересный файл у своего соседа, перейдя в браузере по данной ссылке nginx прочитает чужой файл и выдаст инфу злоумышленникам  :!:

Казалось бы теперь можно просто отключить симлинки вообще директивой

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

isp решила этот вопрос путем прописывания директории в каждом виртуальном хосте

from=часть
При проверке символических ссылок (параметры on и if_not_owner) обычно проверяются все компоненты пути. Можно не проверять символические ссылки в начальной части пути, указав дополнительно параметр from=часть. В этом случае символические ссылки проверяются лишь начиная с компонента пути, который следует за заданной начальной частью. Если значение не является начальной частью проверяемого пути, путь проверяется целиком, как если бы этот параметр не был указан вовсе. Если значение целиком совпадает с именем файла, символические ссылки не проверяются. В значении параметра можно использовать переменные.

я конечно все понимаю но накой мне в каждый вирт хост еще по записи ведь можно проще сделать, ниже мое решение для связки nginx + isp, если у вас nginx < 1.1.16 то обязательно обновитесь, например с официального репозитория

Найдете сами http://www.nginx.org/en/download.html

1. глобально прописываем

2. меняем chmod на вновь создаваемые директории доменов

3. в крон кладем задание которое будет удалять то что isp в вирт хосты дописывает, анти isp))

Если у вас были старые вирт хосты тоесть боевой сервер то на директории доменов нужно проставить права 755 иначе статика не будет отдаваться, для debian сделал небольшой скрипт который автоматически все настроит и пофиксит (права старых доменов в том числе).

или

Для freebsd достаточно добавить 1 запись в nginx.conf глобально

Удачных вам настроек disable_symlinks, и помните безопасность при выше всего!

 

  2 комментария в “Фикс уязвимости с symlink в nginx ispmanager”


  1. Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/wp-code-highlight/wp-code-highlight.php on line 68

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

    вот в связке фронтенд Nginx 1.2.1 + бекенд apache2 (Ispmanager)

    тоже есть эта уязвимость? или уже в патче 1,2,1 профиксили?

     

    • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/wp-code-highlight/wp-code-highlight.php on line 68

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

      disable_symlinks on from=/var/www/user/data/www/domain.ru;

      http://forum.ispsystem.com/ru/showthread.php?t=18132&page=9

       

 Оставить комментарий

(обязательно)

(обязательно)

   
Copyright © 2012. Linuxguru.ru

Warning: call_user_func_array() expects parameter 1 to be a valid callback, class 'smilies_package' does not have a method 'credit_author' in /var/www/private_1/data/www/linuxguru.ru/wp-includes/class-wp-hook.php on line 298

Notice: Undefined index: rel in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 113

Notice: Undefined index: loop in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 121

Notice: Undefined index: loop in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 121

Notice: Undefined index: scrolling in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 129

Notice: Undefined index: scrolling in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 129

Notice: Undefined index: esc_key in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 130

Notice: Undefined index: esc_key in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 130

Notice: Undefined index: arrow_key in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 131

Notice: Undefined index: arrow_key in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 131

Notice: Undefined index: top in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 132

Notice: Undefined index: top in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 132

Notice: Undefined index: right in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 133

Notice: Undefined index: right in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 133

Notice: Undefined index: bottom in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 134

Notice: Undefined index: bottom in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 134

Notice: Undefined index: left in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 135

Notice: Undefined index: left in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 135

Notice: Undefined index: fixed in /var/www/private_1/data/www/linuxguru.ru/wp-content/plugins/lightbox-plus/classes/actions.class.php on line 136