Iċ-ċertifikati jistgħu jkunu fid-direttorju t-tajjeb b’mod li jinqara u proprjetà root, u s-servizz xorta jista’ jirrapporta li ma jistax jiftaħ il-fajl. Fuq sistema SELinux dik il-kombinazzjoni tindika mekkaniżmu wieħed speċifiku u mhux permessi. It-tikketta vvjaġġat mal-fajl, għax bidla fl-isem ma toħloqx oġġett ġdid. L-inode żamm il-kuntest tas-sigurtà li kellu fil-passa l-antik, u l-politika għall-passa l-ġdid qatt ma kisbet iċ-ċans li tassenja tiegħu.

X’jagħmel bidla fl-isem fil-fatt lit-tikketta

Fajl iġorr il-kuntest SELinux tiegħu bħala data ta’ attribut imwaħħla mal-inode. Bidla fl-isem fi ħdan sistema tal-fajls waħda tibdel l-entratura tad-direttorju u xejn aktar, li hija mgħaġġla u atomika, u huwa r-raġuni li l-kuntest jibqa’ ħaj wara t-tmexxija. L-ebda politika ma tiġi kkonsultata, l-ebda valur awtomatiku ma jiġi applikat, u l-ebda twissija ma tiġi stampata.

L-ikkupjar iġib ruħu b’mod differenti. Kopja toħloq inode ġdid fid-direttorju tad-destinazzjoni, u l-politika tassenja kuntest mit-tip ta’ dak id-direttorju, għalhekk ċertifikat ikkupjat normalment jispiċċa bit-tikketta t-tajba filwaqt li wieħed imċaqlaq jibqa’ żbaljat. Dik id-differenza waħda tispjega l-biċċa l-kbira tal-konfużjoni f’din il-klassi ta’ biljetti.

It-tmexxijiet bejn sistemi tal-fajls jaqgħu lura għas-semantika tal-ikkupjar, għalhekk l-istess kmand jista’ jġib ruħu b’mod differenti fuq żewġ magni skont jekk /etc jgħixx fuq volum tiegħu stess. Iċċekkja dan qabel ma tikkonkludi li l-għodda mhix affidabbli. Ħarsa waħda lejn it-tabella tal-mount tgħidlek liema tip ta’ tmexxija għamilt.

Aqra t-tikketta attwali kontra dik mistennija

Tliet kmandi biss tal-qari jwieġbu l-mistoqsija mingħajr ma jbiddlu xejn. L-ewwel juri x’għandu l-fajl bħalissa, it-tieni jirrapporta x’jistenna l-politika għal dik il-passa eżatta, u t-tielet jelenka kull fajl taħt id-direttorju li t-tikketta tiegħu hija differenti.

ls -lZ /etc/openvpn/client/office-ca.crt
matchpathcon /etc/openvpn/client/office-ca.crt
restorecon -Rn -v /etc/openvpn/client

It-tħaddim niexef huwa dak li wieħed jafda, għax isemmi kull fajl li l-kuntest tiegħu jitbiegħed mill-politika u xorta jħalli s-sistema mhux mittiefsa. Jekk iċ-ċertifikat jidher f’dik il-lista, sibt id-diskrepanza bejn dak li tfisser il-passa u dak li jiddikjara l-fajl. Jekk ma jidhirx, it-tikketta hija diġà dik li trid il-politika u ħinek jappartjeni band’oħra.

Imbagħad ikkorrelata d-differenza ma’ rifjut reali. Nuqqas ta’ qbil huwa evidenza ta’ tikketta żbaljata, mhux prova li s-servizz falla minħabba fiha, u tiswija applikata mingħajr rifjut korrispondenti fil-log hija preżunzjoni b’passi żejda.

Erġa’ lura l-immappjar minflok toħloq eċċezzjoni

Għal post standard il-politika diġà timmappa l-passa, għalhekk restorecon tapplikaha u x-xogħol ikun lest. Żomm l-ambitu fid-direttorju li qed issewwi; it-tikkettar mill-ġdid tas-sistema kollha tal-fajls huwa bil-mod, jostakola, u jidfen l-iżball oriġinali taħt bidla kbira ħafna.

Għal direttorju personalizzat l-ordni hija importanti, u li tinqaleb tipproduċi kmand li jirrapporta suċċess filwaqt li ma jbiddel xejn. L-immappjar jappartjeni għall-politika, it-tikkettar mill-ġdid jappartjeni għat-tmiem, u t-tħaddim niexef jappartjeni qabel it-tnejn. Li taqbeż dak l-aħħar parti hija kif passa li qatt ma kienet żbaljata xorta tiġi ttikkettata mill-ġdid.

semanage fcontext -a -t openvpn_etc_t '/etc/openvpn/custom(/.*)?'
restorecon -Rv /etc/openvpn/custom

restorecon tapplika immappjar; ma tistax toħloq wieħed. Jekk l-ebda regola ma tiddeskrivi l-passa, m’hemm xejn x’terġa’ lura minnu, u għalhekk l-immappjar permanenti jrid ikun jeżisti qabel it-tikkettar mill-ġdid. Innota liema konfigurazzjoni tippossjedi dak l-immappjar, għax inkella tmexxija aktar tard, aġġornament tal-pakkett jew tikkettar mill-ġdid jerġgħu joħolqu l-ħsara u l-persuna li jmiss tibda minn żero.

Għaliex chcon mhuwiex is-soluzzjoni

chcon tikteb kuntest direttament fuq il-fajl. Taħdem mill-ewwel u hija l-għażla l-inqas dejjiema disponibbli, għax tikkettar mill-ġdid tas-sistema tal-fajls jerġa’ japplika l-politika u jarmi l-bidliet manwali mingħajr ma jistaqsi. Il-fajl jidher imsewwi u t-tiswija għandha data ta’ skadenza li ħadd ma kiteb. Dak li trid minflok huwa regola li tiddeskrivi l-passa, sabiex kull fajl li jasal hemm jirċievi awtomatikament l-istess trattament.

Agħar minn hekk, tgħallem il-lezzjoni żbaljata: l-immappjar sottostanti għadu nieqes, għalhekk il-ħsara terġa’ lura ġimgħat wara mingħajr trigger ovvju u mingħajr tifkira ta’ dak il-bypass. Uża chcon biss bħala esperiment temporanju biex tikkonferma ipoteżi, imbagħad ibdelha b’immappjar li jiflaħ għat-tikkettar mill-ġdid li jmiss, u ċċekkja li s-sostituzzjoni hija tassew fil-post.

Meta t-tikketta hija tajba u l-aċċess xorta jonqos

Ibda mid-direttorji ġenituri. Il-permess tat-trażżin jiġi ċċekkjat fuq kull komponent tal-passa, għalhekk ċertifikat ittikkettat b’mod korrett ġewwa direttorju li s-servizz ma jistax jidħol fih jibqa’ ma jinqarax. Kemm SELinux kif ukoll il-permess ordinarju jridu jippermettu kull pass, u li tissewwi waħda ma ssewwix l-oħra.

Imbagħad iċċekkja l-identità tal-proċess u l-sandbox tas-servizz stess. Unità b’sandbox restrittiv tista’ tirrifjuta aċċess għal fajl li l-politika kienet tippermetti bil-qalb, u mil-linja tal-log iż-żewġ kawżi jidhru identiċi. Ikkonferma liema proċess qed jistaqsi tassew, mhux liema taħseb li qed jistaqsi.

Ftakar li r-regoli dontaudit jistgħu jrażżnu l-messaġġi ta’ rifjut, għalhekk log tal-awditjar vojt huwa evidenza dgħajfa u mhux prova. Jekk il-politika tidher tajba u l-aċċess xorta jonqos, investiga qabel ma tiġġenera modulu ta’ permess wiesa’, u tiddiżattivax SELinux biex is-sintomu jisparixxi. Iż-żewġ shortcuts jipproduċu sistema li tidher li taħdem u pożizzjoni tas-sigurtà li ħadd ma jista’ jiddeskrivi. Investigazzjoni qasira hija aħjar minn kull waħda minnhom.

Artikli relatati