LINUX.ORG.RU
ФорумAdmin

Подскажите и помогите исправить. Apache и недавний взлом Wordpress

 , ,


1

1

Доброе времени суток.

Не пинайте сильно, просто подскажите, как и что мне исправить, что бы в дальнейшем не попадать на такие вещи.

Не давний косяк в Wordpress (плагин File Manager) у меня на моем маленьком хостинге, личный VPS, ломанули одного клиента.

Фиг с ним этим клиентом, но через него заразили все сайты. Тут уже я понимаю, что это я накосячил.

Все сайты были в папке /var/www/ с правами www-data:www-data.

Сейчас я все сделал так.

/var/www/(отдельно каждый сайт) root:rooo (755)

Каждому сайту я создал пользователя с запретом входа по ssh только sftp с ограничениями домашнего каталога. Домашний каталог это каталог сайта. Права на эту папку User_name:www-data, файлы 654, папки 775.

Что еще надо предусмотреть?

PS

мне интересно прав ли я? Они получили доступ к другим сайтам потому что там был один пользователь www-data?


Что еще надо предусмотреть?

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

потому что там был один пользователь www-data?

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

/var/www/(отдельно каждый сайт) root:rooo (755)

владелец установлен рекурсивно или как?

на эту папку User_name:www-data, файлы 654, папки 775.

на эту папку запрет исполнения стоит?

anonymous
()
Ответ на: комментарий от anonymous

/var/www/(отдельно каждый сайт) root:rooo (755)

владелец установлен рекурсивно или как?

Нет. Только к корню. А вот внутри рекурсивно к файлам папка с отдельным пользователем и группой www-data

на эту папку User_name:www-data, файлы 654, папки 775.

на эту папку запрет исполнения стоит?

Я не могу поставить запрет, как файлы php будут работать?

macik
() автор топика
Ответ на: комментарий от macik

Я не могу поставить запрет, как файлы php будут работать?

вот в этом и одна из проблем:

  1. используя уязвимость тебе подливают шелл на php
  2. обращаются к нему по ссылке и апач/php-fpm радостно берется за его исполнения
  3. а далее используя шелл можно действовать на свое усмотрение: какие-то из них просто заливают файлы, какие-то имеют встроенные средства для подбора паролей (не только пользовательских, но и к БД например), какие-то могут проверять список софта на другие уязвимости. Не будут дальше ломать — запустят майнер или обнаружится, что ты злостный спамер.

взломав один сайт используя права группы www-data можно читать (и писать) файлы других сайтов, выискать как подключаться к БД и сделать что-нибудь нехорошее

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

anonymous
()
Ответ на: комментарий от Gennadevich

что бы в дальнейшем не попадать на такие вещи.

бэкап никак не помогает достичь такой цели. В некоторых случаях клиент сам раскатает бэкап уже у кого-нибудь другого.

anonymous
()
  1. Не использовать пхп

  2. Не держать больше одного клиента на одной машине

Goury ★★★★★
()

а он и сейчас один. Все сайты крутятся одним и тем же апачем. Решение: несколько инстансов апача с реверс-прокси (у Дебиана есть скрипты в стандартной поставке для такой конфигурации) или контейнеры. Самое дешевое решение - каждому клиенту свою впску.

biglpfan
()

nginx/haproxy и клиентов в контейнеры/виртуалки.

Nastishka ★★★★★
()

Я использую конфигурацию apache + php-fpm но сайты все запускаются от своего пользователя.

jura12
()
Ответ на: комментарий от jura12

Я использую конфигурацию apache + php-fpm но сайты все запускаются от своего пользователя.

А как сделали запуск от разных пользователей?

macik
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.