LIDS (Linux Intrusion Detection System)
LIDS (Linux Intrusion Detection System) bol bezpečnostný patch pre linuxové jadro, ktorý rozširoval ochranu systému nad rámec tradičných unixových oprávnení. Umožňoval chrániť súbory, adresáre a procesy aj pred používateľom root, definovať ACL pravidlá, obmedzovať capabilities a generovať bezpečnostné upozornenia.
Architektúra
LIDS 2.2.x sa používal ako patch pre vanilla jadro Linux 2.6 spolu s balíkom lidstools. Základnými administračnými nástrojmi boli:
$ lidsadm $ lidsconf
lidsadm slúžil na zapínanie a vypínanie ochrany, kontrolu stavu, reload konfigurácie a „zapečatenie“ jadra. lidsconf spravoval ACL pravidlá, globálne capabilities a LIDS heslo.
ACL a capabilities
Pravidlá rozlišovali subjekt – spustený program – a objekt, ku ktorému pristupoval. Medzi podporované akcie patrili:
output 6 lines
DENY READONLY APPEND WRITE GRANT IGNORE
Tým bolo možné napríklad nastaviť konfiguračný súbor iba na čítanie, povoliť logom iba append operácie alebo konkrétnemu procesu prideliť vybranú capability.
LIDS Free Session
LIDS umožňoval vytvoriť administračné sedenie bez bežných LIDS reštrikcií. Používalo sa pri údržbe pravidiel alebo chránených súborov.
Zapečatenie jadra
Po dokončení bootovania bolo možné aktivovať globálne obmedzenia capabilities a ďalej obmedziť možnosti používateľa root, napríklad zakázať pridávanie jadrových modulov alebo prístup k vybraným systémovým operáciám.
Praktické problémy
Silná ochrana mala aj prevádzkové dôsledky. Ochrana /etc mohla kolidovať so zápisom do /etc/mtab a append-only ochrana logov komplikovala logrotate. Pri ladení bolo preto potrebné sledovať hlásenia jadra a postupne povoľovať iba nevyhnutné operácie.
Historický význam
LIDS je zaujímavým príkladom obdobia, keď sa ochrana linuxového systému riešila samostatnými kernel patchmi. Článok zachytáva princípy, ktoré sú stále relevantné: minimalizácia privilégií, capabilities, ochrana kritických súborov, oddelenie administrácie od bežnej prevádzky a princíp najmenších oprávnení.
Pôvodný článok
https://linuxos.sk/blackhole/clanok/1936/