FreeBSD-le on arendamisel isoleerimismehhanism, mis sarnaneb pledge'i ja unveiliga

FreeBSD-l on pakutud rakenduste isoleerimise mehhanism, mis sarnaneb OpenBSD projekti arendatavate sĂŒsteemikutsungite pledge ja unveil rakendusele. Pledge'i abil teostatakse isoleerimist, keelates juurdepÀÀsu rakenduses kasutamata sĂŒsteemikutsungitele, samas kui unveil vĂ”imaldab avada juurdepÀÀsu ainult konkreetsetele failiteedele, millega rakendus vĂ”ib töötada. Rakendusele luuakse sĂŒsteemikutsungite ja failiteede must nimekiri, samas kui kĂ”ik muud kutsungid ja teed on keelatud.

FreeBSD-equivalendi pledge ja unveil arendamise eripĂ€ra seisneb tĂ€iendava kihina, mis vĂ”imaldab rakenduste isoleerimist ilma nende koodi muutmata vĂ”i minimaalsete muudatustega. Kuidas on OpenBSD puhul pledge ja unveil suunatud tihedale integratsioonile pĂ”hikeskkonnaga ning rakendatakse, lisades spetsiaalsed annotatsioonid iga rakenduse koodile. Kaitse korraldamise lihtsustamiseks vĂ”imaldavad filtrid vĂ€ltida detailide jagamist ĂŒksikute sĂŒsteemikutsungite tasemel ning manipuleerida sĂŒsteemikutsungite klassidega (sisend/vĂ€ljund, failide lugemine, failide kirjutamine, sokid, ioctl, sysctl, protsesside kĂ€itamine jne). JuurdepÀÀsu piiramise funktsioone saab kohe kutsuda rakenduskoodis, nĂ€iteks sokkide ja failide juurdepÀÀs vĂ”ib sulgeda pĂ€rast vajalike failide avamist ja vĂ”rguĂŒhenduse loomist.

Pledge ja unveil FreeBSD jaoks porti autor plaanib pakkuda isoleerimise vĂ”imalusi erinevatele rakendustele, mille jaoks on vĂ€lja pakutud utiliit curtain, mis vĂ”imaldab rakendustele rakendada reegleid, mis on mÀÀratletud eraldi failis. Pakutud konfiguratsioon sisaldab faili pĂ”hiseadetega, mis mÀÀratlevad sĂŒsteemikutsungite klassid ja tĂŒĂŒpilised failiteed, mis on spetsiifilised teatud rakendustele (heli töötlemine, vĂ”rgu suhtlemine, logidesse kirjutamine jne), samuti faili, millel on konkreetsete rakenduste juurdepÀÀsureeglid.

Utiliit curtain saab kasutada enamikku muutmata utiliitide, serveriprotsesside, graafiliste rakenduste ja isegi terve töölaudadesessiooni isoleerimiseks. Curtain toetab koos töötamist isoleerimismehhanismidega, mida pakuvad Jail ja Capsicum alamsĂŒsteemid. Samuti on vĂ”imalik korraldada sisemist isoleerimist, kus kĂ€ivitatavad rakendused pĂ€rivad vanemrakendusele seatud reeglid, lisades neile eraldi piiranguid. MĂ”ned tuumaoperatsioonid (ÀÀrele rakendamise vahendid, POSIX/SysV IPC, PTYs) on tĂ€iendavalt kaitstud barjÀÀride mehhanismi abil, mis ei luba juurdepÀÀsu tuumaobjektidele, mis on loodud mitteolemasoleva vĂ”i vanemprotsessi poolt.

Protsess saab isoleerimist iseseisvalt seadistada, kasutades curtainctl'i kutsumist vÔi kasutades libcurtain'i pakutavaid funktsioone plegde() ja unveil(), mis sarnanevad OpenBSD funktsioonidele. Rakenduse töös esinevate tÔkete jÀlgimiseks on ette nÀhtud sysctl 'security.curtain.log_level'. X11 ja Waylandi protokollide juurde pÀÀsemine aktiveeritakse eraldi, mÀÀrates curtain'i kÀivitamisel valikud "-X"/"-Y" ja "-W", kuid graafiliste rakenduste tugi ei ole veel piisavalt stabiilne ning tal on mitmeid lahendamata probleeme (probleemid ilmnevad peamiselt X11 kasutamisel, samas kui Waylandi tugi on oluliselt parem). Kasutajad saavad lisapiiranguid luua, luues kohalikke reeglite faile (~/.curtain.conf). NÀiteks Firefoxi kirjutamise lubamiseks ainult katalooge ~ /Downloads/ saab lisada sektsiooni "[firefox]" reegliga "~ /Downloads/ : rw +".

Teostus sisaldab tuuma moodulit mac_curtain mandsĂŒstemaatiliseks juurdepÀÀsul toimub (MAC, Mandatory Access Control), kogumi patĆĄiseid FreeBSD tuumale vajalike töötlejate ja filtrite rakendamiseks, raamatukogu libcurtain, et kasutada funktsioone plegde ja unveil rakendustes, utiliiti curtain, nĂ€idisdokumendid, testide kogum ja patĆĄid mĂ”nedele kasutajaruumi programmidele (nĂ€iteks $TMPDIR kasutamiseks ajutiste failide töötlemise ĂŒhtlustamiseks). Autori soov on, et muudetud muudatusi, mille jaoks on vaja patĆĄide rakendamist tuumale ja rakendustele, oleks vĂ”imalikult vĂ€he.

Allikas: opennet.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster