Проект Openwall публикува изданието на модула LKRG 0.9.0 (Linux Kernel Runtime Guard), предназначен за откритие и блокиране на атаки и нарушения на целостта на структурата на ядрото. Например, модулът може да защити от неразрешени промени в работещото ядро и опити за смяна на правомощията на потребителските процеси (определяне на прилагането на експлоити). Модулът е подходящ както за организиране на защита от експлоити на вече известни уязвимости на ядрото на Linux (например, в ситуации, когато е проблематично да се обнови ядрото на системата), така и за противопоставяне на експлоити на още неизвестни уязвимости. Кодът на проекта е разпространен под лицензия GPLv2.
Сред измененията в новата версия:
- Обеспечена е съвместимост с ядра на Linux от 5.8 до 5.12, а също така и със стабилни ядра 5.4.87 и по-нови (включително новости от ядрата 5.8 и по-нови) и с ядра от версии RHEL до 8.4, като се запазва поддръжката и на всички предишно поддържани версии на ядра, като например ядра от RHEL 7;
- Добавена е възможността за компилиране на LKRG не само като външен модул, но и в състава на дървото на ядрото на Linux, включително вграждането му в образа на ядрото;
- Добавена е поддръжка на много допълнителни конфигурации на ядрото и системата;
- Коригирани са няколко съществени грешки и недоразумения в LKRG;
- Съществено е опростена реализацията на някои компоненти на LKRG;
- Направени са промени за опростяване на бъдещата поддръжка и отстраняване на грешки в LKRG;
- За тестване на LKRG е добавена интеграция с out-of-tree и mkosi;
- Репозиторият на проекта е преместен от BitBucket на GitHub и е добавена непрекъсната интеграция с използване на GitHub Actions и mkosi, включително проверка на компилацията и зареждане на LKRG в ядрата на релизите на Ubuntu, а също така и в предоставяните от проекта Ubuntu ежедневно компилации на най-новите mainline ядра.
В това издание на LKRG директен принос (чрез pull requests на GitHub) са дали няколко разработчици, които преди не са участвали в проекта. В частност, Борис Лукашев добави възможността за компилиране в състава на дървото на ядрото на Linux, а Виталий Чикунов от ALT Linux — интеграция с mkosi и GitHub Actions.
В обобщение, въпреки съществените добавки, броят на редовете код в LKRG леко намалява втори пореден път (по-рано той също е намалял между версиите 0.8 и 0.8.1).
В момента пакет с LKRG в Arch Linux вече е обновен до версия 0.9.0, а редица други пакети използват актуални git версии на LKRG и вероятно скоро също ще бъдат обновени до версия 0.9.0 и по-нататък.
Допълнително може да се отбележи неотдавнашната публикация от разработчиците на ОС Аврора (руска модификация на Sailfish OS) за възможното засилване на LKRG с помощта на ARM TrustZone.
Повече за LKRG вижте в анонса на версия 0.8 и проведената тогава дискусия.
Източник: opennet.ru
