Ettevõte esitas Linuxi tuumade arendajate postitusloendis arutamiseks LSM-moduuli koodi, mis rakendab IPE (Integrity Policy Enforcement) mehhanismi, laiendades olemasolevaid mandaadi juurdepääsuhaldussüsteeme. Selle asemel, et tugineda siltidele ja teedele, põhineb IPE otsus operatsiooni lubamise või keeldumise kohta süsteemi komponendi püsivatel omadustel, millega operatsioon viiakse läbi. Moodul võimaldab määrata kogu süsteemi integreerimise poliitika, mis näitab, millised operatsioonid on lubatud ja milliseid viise tuleks komponentide autentimise kontrollimiseks kasutada.
IPE eesmärk on luua täiesti kontrollitavaid süsteeme, mille terviklikkust tõendatakse algsest käivitajast ja põhituumast kuni lõppkäidavate failide, seadistuste ja laadimisfailideni. Näiteks saab IPE abil määrata, milliseid käidufailide on lubatud käivitada, järgides nende vastavuse kontrollimist näidistootega, kasutades süsteemi dm-verity poolt pakutavaid krüptograafilisi räsi. Faili muutumise või valeandmise korral võib IPE operatsiooni blokeerida või registreerida terviklikkuse rikkumise.
Pakutud mehaanikat saab rakendada sisseehitatud seadmete püsivara jaoks, kus kogu tarkvara ja seaded on spetsiaalselt kokku pandud ja tarnitud omanikult, näiteks Microsofti andakeskustes kasutatakse seda võrgutootmis seadmetes. Erinevalt teistest integriteedi kontrolli süsteemidest, nagu IMA, eristab IPE sõltumatus metadatadest FS-is — kõik omadused, mis määratlevad tehingute lubatavuse, on salvestatud otse tuumas.
Reeglid määratakse tekstivormingus, kasutades võtme-väärtuse paare. Baasjärel on võtmed 'op', mis määratleb tehingu, millele reegel kehtib (näiteks op=EXECUTE aktiveerub käivitamise katsetamisel) ja 'action', mis määratleb toimingu (näiteks 'action=DENY' blokeerimise jaoks). Reeglid seostatakse omadustega, mida pakuvad välistes alamsüsteemides, nagu dm-verity ja fs-verity.
Näiteks, reeglid op=EXECUTE boot_verified=TRUE action=ALLOW op=EXECUTE dmverity_signature=FALSE action=DENY op=EXECUTE fsverity_digest=sha256:401fce…0dec146938 action=DENY lubavad ainult laadimist usaldusväärsest osast, keelavad failide käivitamise osadelt, millel ei ole dm-verity allkirju, samuti valikuliselt keelavad faili käivitamise, mille räsi on „401fce…0dec146938”.
Algne käivitusreeglite komplekt määratakse CONFIG_SECURITY_IPE_BOOT_POLICY seadistamise abil ja on osa tuumakoost, samas kui ülejäänud reeglid lisatakse vajadusel faili /sys/kernel/security/ipe/new_policy kaudu. Edastatud reeglid krüpteeritakse kasutades SYSTEM_TRUSTED_KEYRING'is määratud sertifikaati.
Üldkasutusele mõeldud süsteemides soovitatakse kasutada IPE-d koos Huawei arendatava DIGLIM mehhanismiga. DIGLIM on rakendatud eBPF abil ja võimaldab hõlpsalt rakendada failide terviklikkuse kontrolli tavalistes distributsioonides ilma nende ümber töötlemiseta (on esitatud kui loodud Secure Booti variandina, mis töötab rakenduslikul tasemel). DIGLIMi olemus seisneb kontrollide käputäie kontrollsumma hoidmise ning metaandmete jaoks ja lubab juurdepääsu täitmise failidele ainult juhul, kui selle kontrollsumma on käputäies. Kontrollsummade nimekirja võib saada RPM pakihaldurilt või kasutada kasutaja poolt käsitsi genereeritud loendit.
Allikas: opennet.ru
