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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

KernelCare защита от привилегии Rowhammer ...
Помогите нам понять, насколько хорош OptimumCache

Комментарии

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

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