Rilascio del modulo LKRG 0.9.0 per la protezione dallo sfruttamento delle vulnerabilità nel kernel Linux

Il progetto Openwall ha pubblicato il rilascio del modulo kernel LKRG 0.9.0 (Linux Kernel Runtime Guard), progettato per rilevare e bloccare attacchi e violazioni dell'integrità delle strutture del kernel. Ad esempio, il modulo può proteggere da modifiche non autorizzate al kernel in esecuzione e tentativi di modificare le autorizzazioni dei processi utente (rilevando l'uso di exploit). Il modulo è adatto sia per organizzare la protezione contro gli exploit di vulnerabilità già note del kernel Linux (ad esempio, in situazioni in cui è difficile aggiornare il kernel nel sistema), sia per contrastare gli exploit per vulnerabilità ancora sconosciute. Il codice del progetto è distribuito sotto la licenza GPLv2.

Tra le novità della nuova versione:

  • Viene fornita la compatibilità con i kernel Linux da 5.8 a 5.12, nonché con i kernel stabili 5.4.87 e successivi (comprese le innovazioni dai kernel 5.8 e successivi) e con i kernel delle versioni RHEL fino alla 8.4, pur mantenendo il supporto per tutte le versioni precedentemente supportate di kernel, come i kernel di RHEL 7;
  • Aggiunta la possibilità di creare LKRG non solo come modulo esterno, ma anche come parte dell'albero del kernel Linux, inclusa la sua inclusione nell'immagine del kernel;
  • Aggiunto supporto per molte configurazioni aggiuntive del kernel e del sistema;
  • Risolti diversi errori e carenze significativi in ​​LKRG;
  • L'implementazione di alcuni componenti LKRG è stata notevolmente semplificata;
  • Sono state apportate modifiche per semplificare ulteriormente il supporto e il debug di LKRG;
  • Per testare LKRG è stata aggiunta l'integrazione con out-of-tree e mkosi;
  • Il repository del progetto è stato spostato da BitBucket a GitHub ed è stata aggiunta l'integrazione continua utilizzando GitHub Actions e mkosi, incluso il controllo della build e il caricamento di LKRG nei kernel di rilascio di Ubuntu, nonché nelle build giornaliere degli ultimi kernel principali forniti dal Progetto Ubuntu.

Diversi sviluppatori che non erano stati precedentemente coinvolti nel progetto hanno dato contributi diretti a questa versione di LKRG (tramite richieste pull su GitHub). In particolare, Boris Lukashev ha aggiunto la possibilità di compilare come parte dell'albero del kernel Linux e Vitaly Chikunov di ALT Linux ha aggiunto l'integrazione con mkosi e GitHub Actions.

Nel complesso, nonostante le aggiunte significative, il numero di righe di codice LKRG è stato leggermente ridotto per la seconda volta consecutiva (era stato ridotto anche in precedenza tra le versioni 0.8 e 0.8.1).

Al momento, il pacchetto LKRG su Arch Linux è già stato aggiornato alla versione 0.9.0, e un certo numero di altri pacchetti utilizzano le recenti versioni git di LKRG e probabilmente verranno presto aggiornati alla versione 0.9.0 e oltre.

Inoltre, possiamo notare una recente pubblicazione da parte degli sviluppatori di Aurora OS (modifica russa del sistema operativo Sailfish) sul possibile rafforzamento di LKRG utilizzando ARM TrustZone.

Per ulteriori informazioni su LKRG, vedere l'annuncio della versione 0.8 e la discussione che ha avuto luogo allora.

Fonte: opennet.ru

Aggiungi un commento