Атака на хостинг. Как я раскрутил эскалацию привилегий в Plesk - «Новости»
Меню
Наши новости
Учебник CSS

Невозможно отучить людей изучать самые ненужные предметы.

Введение в CSS
Преимущества стилей
Добавления стилей
Типы носителей
Базовый синтаксис
Значения стилевых свойств
Селекторы тегов
Классы
CSS3

Надо знать обо всем понемножку, но все о немногом.

Идентификаторы
Контекстные селекторы
Соседние селекторы
Дочерние селекторы
Селекторы атрибутов
Универсальный селектор
Псевдоклассы
Псевдоэлементы

Кто умеет, тот делает. Кто не умеет, тот учит. Кто не умеет учить - становится деканом. (Т. Мартин)

Группирование
Наследование
Каскадирование
Валидация
Идентификаторы и классы
Написание эффективного кода

Самоучитель CSS

Вёрстка
Изображения
Текст
Цвет
Линии и рамки
Углы
Списки
Ссылки
Дизайны сайтов
Формы
Таблицы
CSS3
HTML5

Новости

Блог для вебмастеров
Новости мира Интернет
Сайтостроение
Ремонт и советы
Все новости

Справочник CSS

Справочник от А до Я
HTML, CSS, JavaScript

Афоризмы

Афоризмы о учёбе
Статьи об афоризмах
Все Афоризмы

Видео Уроки


Наш опрос



Наши новости

       
19-05-2019, 15:00
Атака на хостинг. Как я раскрутил эскалацию привилегий в Plesk - «Новости»
Рейтинг:
Категория: Новости

");
}else{
$('#mpu1-desktop').remove();
console.log('mpu1-desktop removed');
}
});

Содержание статьи

  • Анализ уязвимости
  • Демонстрация уязвимости (видео)
Рут на shared-хостинге — не обязательно публичная уязвимость в ядре Linux. В этой статье будет разобрана уязвимость в популярной хостинг-панели Plesk, позволяющая повысить привилегии на хостинговом сервере и получить доступ ко всем соседям.

Чтобы предоставлять услуги хостинга сайтов, в наше время недостаточно веб-сервера и аккаунта на FTP. Существует несколько популярных панелей, которые позволяют без трудностей развернуть и поддерживать сайт даже неопытному пользователю. Там есть файловый менеджер, текстовый редактор, интерфейс для управления базами данных, выбор версии PHP и все, что может понадобиться пользователю хостинга.


Одна из таких панелей — Plesk. Эта панель используется хостинг-провайдерами по всему миру, включая таких гигантов, как GoDaddy. Взлом хостинга может обернуться серьезными последствиями — например, известен случай, когда злоумышленники взломали хостера, зашифровали все данные и требовали за них миллион долларов.


Уязвимость, о которой я хочу рассказать, — это чтение файлов с повышенными привилегиями с помощью атаки Rogue MySQL Server. Она в итоге обернулась эскалацией привилегий.


Стенд


Итак, самое время надеть белую шляпу и приступать к ресерчу. Основная часть Plesk написана на PHP. Plesk бывает под Windows Server и Linux, нас интересует последний. Для стенда проще всего использовать локальную виртуалку или VPS c Ubuntu 16.04 на борту. Для начала загружаем инсталлятор и даем права на исполнение.


$ wget 'http://installer.plesk.com/plesk-installer'
$ chmod +x plesk-installer
[/code]

Помимо привычной тебе системы обновлений через версии, в Plesk имеется еще и такая вещь, как микроапдейты (Micro-Updates). Это, по сути, патчи к исходникам на PHP, при накатывании которых версия панели остается неизменной. Уязвимость, о которой мы поговорим, была устранена с помощью такого апдейта, поэтому инсталлер нужно запускать с флагом skip-patch, и тогда фикс, закрывающий уязвимость, не применится.


$ sudo ./plesk-installer --skip-patch
[/code]

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


Plesk имеет хороший CLI-API, которым мы и воспользуемся, чтобы не возиться с вебом. В лучших традициях Unix настроим все, не покидая терминала.


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


$ PLSK_SITE_IP=$(sudo plesk bin ipmanage -l | grep -o '[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}' | head -n 1)
$ sudo plesk bin customer --create researcher -name "russian bear" -passwd "SamPle123!" -notify false
$ sudo plesk bin subscription -c example.com -owner researcher -service-plan "Default Domain" -ip $PLSK_SITE_IP -login researcher -passwd "SamPle123!"
[/code]

Еще нам понадобится база данных. Создадим MySQL юзера и базу.


$ sudo plesk bin database --create testdb -domain example.com -type mysql
$ sudo plesk bin database --create-dbuser testuser -passwd "SamPle123!" -domain example.com -server localhost:3306 -database testdb
[/code]

Тестовый стенд готов. Залогиниться в панель от созданного юзера researcher можно по адресу https://{YOUR_IP}:8443/. Полученный нами минимальный набор функций будет доступен на любом хостинге с Plesk.


Анализ уязвимости


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


Источник новостиgoogle.com



Теги: CSS, plesk sudo Plesk researcher будет

Просмотров: 659
Комментариев: 0:   19-05-2019, 15:00
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

 
Еще новости по теме:



Другие новости по теме: