CloudLinux - Блог CloudLinux - KernelCare: Как это работает?
RSS

KernelCare: Как это работает?

KernelCare: Как это работает?

Перезагрузка - это боль

Перезагрузка сервера - это боль. Его часто назначают на самую темную ночь. Это требует минут простоя, и для достижения производительности сервера может потребоваться до 15 минут, и он загорается. Это не то, что вы хотите делать часто. Да, в любое время, когда в ядре возникает уязвимость системы безопасности, сервер должен быть перезагружен. Здесь находится KernelCare. Он предоставляет услугу, которая будет исправлять уязвимости безопасности внутри запущенного ядра - без каких-либо простоя или прерывания обслуживания.

Подготовка патча

Наша команда ядра контролирует списки рассылки безопасности. Как только они замечают, что есть уязвимость безопасности, которая затрагивает одно из поддерживаемых ядер - они готовят патч для этой уязвимости. Этот патч компилируется в двоичном формате для этого точного ядра и развертывается на наших серверах распространения. Агент KernelCare, находящийся на вашем сервере, периодически регистрируется на наших серверах распространения. Если в текущем ядре есть новый патч, он загрузит его и применит к работающему ядру, сделав ядро ​​безопасным снова.

Как работает патч?

Когда мы обнаруживаем уязвимость, мы создаем «патч» - часть кода, которая будет использоваться для замены уязвимого кода в ядре безопасным вариантом. Это может быть произвольная модификация строки кода в простейшем случае, добавление недостающей проверки безопасности, набор функций, измененных или даже модифицированных структур данных.

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

Применение обновления

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

Специальный модуль ядра

Как мгновение ока

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

Полная безопасность

Технология KernelCare настолько мощна, что ее можно также использовать для приведения новых функций в Интернете или отсутствовать в ядрах поставщиков акций, таких как усиление безопасности путем добавления проверок безопасности, аналогичных проверкам в популярных ядрах grsecurity (например, TPE). Он также может использоваться для большинства традиционных исправлений ошибок, не связанных с состоянием устройства HW, а не только с проблемами безопасности. Тем не менее, уязвимости безопасности - это самый практически важный класс проблем, которые необходимо устранить как можно быстрее и, таким образом, заслуживают самого пристального внимания.

Нет перезагрузки! Нет простоев!

Beta: обновлен LVE Manager
Бета-версия: Alt-PHP 4.4 обновлен

Комментарии

Нет комментариев на форуме. Будьте первым, чтобы оставить свой комментарий
Уже зарегистрирован? ВОЙТИ
гость
Среда, 18 сентября 2019

Защитный код изображение