LKRG, модул, предназначен за откриване и блокиране на атаки и нарушения в ядрото на Linux

Проектът Openwall пусна LKRG 0.8 ядро ​​модул версия (Linux Kernel Runtime Guard), предназначени за откриване и блокиране на атаки y нарушения на целостта на основните структури.

Модулът подходящ е както за организиране на защита срещу вече познати подвизи за ядрото на Linux (например в ситуации, когато актуализирането на ядрото в системата е проблематично), като за противопоставяне на експлойти за неизвестни уязвимости.

Какво е новото LKRG 0.8?

В тази нова версия позиционирането на проекта LKRG е променено, какво дачас не е разделен на отделни подсистеми да провери целостта и да определи използването на експлойти, но се представя като цялостен продукт за идентифициране на атаки и различни нарушения на целостта;

По отношение на съвместимостта на тази нова версия, можем да открием, че е съвместим с Linux ядра от 5.3 до 5.7както и ядра, съставени с агресивни GCC оптимизации, без опциите CONFIG_USB и CONFIG_STACKTRACE или с опцията CONFIG_UNWINDER_ORCкакто и с ядра, при които няма функции, прихванати от LKRG, ако можете без.

В допълнение към експериментална поддръжка за 32-битови ARM платформи (тествано на Raspberry Pi 3 Model B), докато за по-ранна налична поддръжка за AArch64 (ARM64) се допълва от съвместимост с Raspberry Pi 4.

Освен това, добавени са нови куки, които включват манипулатор на обаждания „hook ()“ за по-добро идентифициране на уязвимости, които се манипулират от „възможности“, а не от идентификатори на процеса.

В x86-64 системи битът SMAP се проверява и прилага (Предотвратяване на достъпа в режим на надзор), dпредназначен да блокира достъпа до данни в потребителското пространство от привилегирован код, изпълнен на ниво ядро. Защитата SMEP (Supervisor Mode Execution Prevention) е внедрена по-рано.

Има повишена мащабируемост на базата данни за проследяване на процеси: вместо едно RB дърво, защитено със спинлок, е включена хеш таблица от 512 RB дървета, защитена съответно от 512 ключалки за четене и запис;

Включен и активиран е режим по подразбиране, в който проверка на целостта на идентификаторите Обработката често се извършва само за текущата задача, а също и по избор за задействани задачи (събуждане). За други задачи, които са в спряно състояние или които функционират без LKRG контролирано извикване на API на ядрото, проверката се извършва по-рядко.

В допълнение към файлът systemd unit е преработен за зареждане на модула LKRG на ранен етап на зареждане (опцията на командния ред на ядрото може да се използва за деактивиране на модула);

По време на компилацията бяха проверени някои от задължителните настройки на ядрото CONFIG_ *, за да генерират значими съобщения за грешки, а не неясни грешки.

От останалите промени, които се открояват в тази нова версия:

  • Добавена поддръжка за режими в режим на готовност (ACPI S3, Suspend to RAM) и Suspend (S4, Suspend to Disk).
  • Добавена е поддръжка за DKMS в Makefile.
  • Предлага се нова логика за определяне на опитите за излизане от ограниченията на пространството от имена (например от контейнери на Docker).
  • В този процес конфигурацията LKRG се поставя на страница с памет, обикновено само за четене.
  • Изходът към регистрационните файлове на информация, която може да бъде най-полезна за атаки (например адресна информация в ядрото), е ограничен от режим за отстраняване на грешки (log_level = 4 и по-нови), който е деактивиран по подразбиране.
  • Добавени са нови sysctl и модулни параметри за настройка на LKRG, както и два sysctl за опростена конфигурация чрез избор от профили, изготвени от разработчици.
  • Настройките по подразбиране се променят, за да се постигне по-балансиран баланс между скоростта на откриване на нарушението и ефективността на реакцията, от една страна, и въздействието върху производителността и риска от фалшиви положителни резултати, от друга.
  • Според оптимизациите, предложени в новата версия, намаляването на производителността при прилагане на LKRG 0.8 се оценява на 2.5% в режим по подразбиране ("тежък") и 2% в лек режим ("лек").

Ако искате да научите повече за това, можете да се консултирате подробности тук. 


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорник за данните: AB Internet Networks 2008 SL
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.