Ìdí tí nosuid fi dẹ́kun olùrànlọ́wọ́ VPN láti di root
Ilé tí a fi àṣírí ṣe àti nosuid mount jẹ́ àwọn ẹ̀yà ọ̀tọ̀ọ̀tọ̀. Olùrànlọ́wọ́ nílò ọ̀nà ìfiṣe tí ó gbẹ́kẹ̀lé àti ipò ìbẹ̀rẹ̀ tí ó bọ̀wọ̀ fún bítì àǹfààní rẹ̀.
Ìṣàkóso àṣírí dískì àti nosuid mount dàbí ẹ̀yà ti èrò kan náà, wọ́n kò sì ní ìbáṣepọ̀ kankan. Ọ̀kan ń dáàbò bo dátà tí ó wà ní ìsinmi, èkejì sì ń pinnu bóyá kẹ́rnẹ́lì yóò bọ̀wọ̀ fún bítì àǹfààní ní àkókò tí ètò bẹ̀rẹ̀. Olùrànlọ́wọ́ tí kò lè dé ìdánimọ̀ tí ó ń retí ń ṣàròyé nípa èkejì. Àbá tí ó sọ pé èkínní ni ó jẹ́bi ń rán àwọn ènìyàn lọ fi àwọn kliẹ́ńtì tí kò tíì bàjẹ́ rí ṣe lẹ́ẹ̀kan sí i.
Àwọn Ẹ̀yà Méjì Tí Kò Ní Ìbáṣepọ̀
Ìṣàkóso àṣírí dískì ń dáhùn ẹni tí ó lè ka àwọn búlọ́ọ̀kì nígbà tí ẹ̀rọ ti pa. Àṣàyàn mount ń dáhùn ohun tí kẹ́rnẹ́lì yóò ṣe pẹ̀lú àwọn bítì ipò fáìlì nígbà tí ẹnìkan bá ṣe é. Kò sí ohun kan nínú èkínní tí ń dẹ́kun èkejì, kọ̀mpútà gbé kiri tí a fi àṣírí ṣe pátápátá lè mount ètò fáìlì pẹ̀lú gbogbo àwọn ìkálẹ̀kùn ní ipò wọn.
Kíkà wọ́n gẹ́gẹ́ bí ẹ̀yà kan ṣoṣo ni ó ń mú àbá tí ó sọ pé ilé tí a fi àṣírí ṣe ń dẹ́kun àǹfààní root jáde. Àbá yẹn ń dúró nítorí pé àwọn àmì méjì náà farahàn lórí ẹ̀rọ kan náà, kì í ṣe nítorí pé wọ́n ní ìdí kan.
Ohun Tí Ó Ń Tẹ̀ Mọ́ Ìyípadà Ní Otitọ́
Ìtọ́kasí execve ń ṣàpèjúwe bí fáìlì ṣíṣe pẹ̀lú set-user-ID ṣe ń yí ìdánimọ̀ tí ó ní ipa ti ètò tuntun padà sí ti olówó fáìlì. Ojú-ìwé kan náà ṣe àtẹ̀jáde àwọn ipò tí ó ń tẹ̀ mọ́ ìyípadà yẹn àti èyí tí ó bá a mu fún àwọn ìdánimọ̀ ẹgbẹ́: ètò no_new_privs, ètò fáìlì tí a fi nosuid mount, àti ètò tí a ń tọpinpin. Àwọn agbára fáìlì ni a ń fojú fo ní àwọn ipò kan náà. Àwọn òfin mẹ́rin yẹn ń bo ó fẹ́rẹ̀ẹ́ jẹ́ gbogbo ìròyìn irú yìí.
Àtẹ̀jáde yẹn ń ṣàlàyé ìdí tí ipò tí ls ń tẹ̀ kì í ṣe gbogbo ìtàn àṣẹ nígbàkigbà. Kò sọ ipò wo ni ó fa ìfiránṣẹ́ ìkùnà kan pàtó, àti pé ohun èlò náà lè ń jábọ̀ nípa iṣẹ́ ẹ̀rí tí kò ní ìbáṣepọ̀ pẹ̀lú àwọn ọ̀rọ̀ kan náà. Kọ àkọsí ètò, olùbẹ̀rẹ̀ àti ìtẹ̀léṣẹ̀ àṣìṣe náà kí o tó pinnu.
Dámọ̀ fáìlì ṣíṣe tí pákẹ́ẹ̀jì tí a ń ṣètìlẹ́yìn fi sísọ, olówó rẹ̀, ọ̀nà gidi rẹ̀ àti ìlànà ètò fáìlì tí ó ń gbà á. Ẹ̀dà tí ó wà nínú fódà ìgbàsílẹ̀ kì í ṣe olùrànlọ́wọ́ tí a fi sísọ, ohunkóhun tí ipò rẹ̀ bá sọ.
Ohun Tí A Kò Gbọdọ̀ Ṣe
Fífi bítì set-user-ID sórí binárì tí a kò tíì ṣàyẹ̀wò àti gbígbé e kiri títí tí ìkálẹ̀kùn yóò fi pòórá kì í ṣe àtúnṣe. Ó ń rọ́pò ìlànà tí o kò yé pẹ̀lú àǹfààní tí o kò lè ṣàyẹ̀wò, àti pé lílo ọ̀nà kan náà lórí olùrànlọ́wọ́ jẹ́ ọ̀nà ìgbéga tí a mọ̀. Yíyọ nosuid kúrò nínú mount burú jù, nítorí pé ó ń kan gbogbo ètò lórí ètò fáìlì yẹn, kì í ṣe ọ̀kan.
Ọ̀nà tí a ń ṣètìlẹ́yìn ni ìfiṣe olùrànlọ́wọ́ tàbí iṣẹ́ tí a kọ sílẹ̀ láti ọwọ́ kliẹ́ńtì, tí alábòójútó ń ṣe, tí ó ń gbé binárì náà sí ibi tí ìlànà ń retí. Èyí ń pa ọ̀nà àǹfààní kan mọ́ dípò méjì.
Jẹ́rìí Ipò Ìbẹ̀rẹ̀ Gidi
Lẹ́yìn àtúnṣe tí a fọwọ́ sí, ṣiṣẹ́ olùrànlọ́wọ́ náà bí ọjà ṣe ń ṣiṣẹ́ rẹ̀, kì í ṣe láti inú shell root. Àṣeyọrí gẹ́gẹ́ bí root kò fi ohunkóhun hàn nípa ọ̀nà tí olùmúlò lasan ń gbà, àti ìyàtọ̀ láàrin àwọn ipò méjì yẹn ni ohun tí ìkùnà náà dá lórí.
Lẹ́yìn náà jẹ́rìí iṣẹ́ nẹ́tíwọ́kì tí olùrànlọ́wọ́ wà fún. Olùrànlọ́wọ́ tí ó bẹ̀rẹ̀ ṣùgbọ́n tí kò lè ṣètò ìtẹ̀jáde ti gbé ìṣòro náà lọ ìpele kan sí iwájú, kò yanjú rẹ̀.
findmnt -no TARGET,OPTIONS /home
getcap /usr/libexec/openvpn-helper 2>/dev/null; ls -l /usr/libexec/openvpn-helper
Kọ àwọn àṣàyàn mount àti ẹ̀tọ́ olówó olùrànlọ́wọ́ nínú àkọsílẹ̀ kan náà. Bí bẹ́ẹ̀ kọ́, ẹni tí yóò tún èyí ṣe yóò tún àbá àṣírí náà sọ láti ìbẹ̀rẹ̀.