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


Рубрика: Новости Linux
Метки: |
Просмотров: 3066

Кэйс Кук (Kees Cook), главный сисадмин kernel.org и лидер Ubuntu Security Team, предложил в списке рассылки разработчиков Linux-ядра с целью повышения безопасности расширить области использования в ядре страниц памяти, переведённых в режим "только чтение". Данная мера позволит реализовать упреждающую защиту от эксплуатации уязвимостей, связанных с возможностью перезаписи областей памяти ядра, вследствие ошибок.

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

В качестве базиса для реализации данной идеи предложено использовать работу, ранее начатую в рамках проекта PaX, по реорганизации таблиц указателей на функции в вид с постоянными указателями (перевод указателей в режим только для чтения после их инициализации). Кроме того, предлагается добавить в ядро патч, реализующий механизм повышения безопасности модулей ядра через реализацию возможности запрещения выполнения кода и операций записи для определённых частей модулей.

С общим планом переноса в основное Linux-ядро различных улучшений из проектов PaX и grsecurity можно ознакомиться на данной странице. Кроме вышеотмеченных функций можно упомянуть проведение чистки файловой системы /proc на предмет возможной утечки важной для проведения атак информации; добавление возможностей для контроля автозагрузки модулей; поддержка пометки процессов как только 32- или 64-разрядных; ограничение доступа к системным вызовам, связанным с режимом vm86; скрытие служебных символьных таблиц ядра; рандомизация стека ядра и сегментирование памяти (PAX_RANDKSTACK, PAX_MEMORY_UDEREF); поддержка битовой маски для ограничения доступа к определённым классам системных вызовов.

Источник 4


  • Комментариев: 0

  • Вконтакте

  • Facebook:

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

    grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

    Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

    Имя и сайт используются только при регистрации

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

    Авторизация 

    MaxSiteAuth.

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