Kako onemogočiti zaščito integritete sistema na Macu (in zakaj ne bi smeli)

Mac OS X 10.11 El Capitan ščiti sistemske datoteke in procese z novo funkcijo, imenovano System Integrity Protection. SIP je funkcija na ravni jedra, ki omejuje, kaj lahko počne "root" račun.

To je odlična varnostna funkcija in skoraj vsi - tudi "zahtevni uporabniki" in razvijalci - bi jo morali pustiti omogočeno. Če pa resnično želite spremeniti sistemske datoteke, jo lahko obidete.

Kaj je zaščita integritete sistema?

POVEZANE: Kaj je Unix in zakaj je to pomembno?

V Mac OS X in drugih operacijskih sistemih, podobnih Unixu, vključno z Linuxom, obstaja "root" račun, ki ima tradicionalno popoln dostop do celotnega operacijskega sistema. Ko postanete korenski uporabnik - ali pridobite korenska dovoljenja - vam omogoča dostop do celotnega operacijskega sistema in možnost spreminjanja in brisanja katere koli datoteke. Zlonamerna programska oprema, ki pridobi korenska dovoljenja, lahko ta dovoljenja uporabi za poškodovanje in okužbo datotek nizkega nivoja operacijskega sistema.

Vnesite svoje geslo v varnostno pogovorno okno in dali ste root dovoljenja za uporabo. To mu tradicionalno omogoča, da naredi kar koli v vašem operacijskem sistemu, čeprav mnogi uporabniki Maca tega morda niso vedeli.

Zaščita integritete sistema - znana tudi kot "brez korenin" - deluje tako, da omeji korenski račun. Jedro operacijskega sistema samo preverja dostop korenskega uporabnika in mu ne dovoli, da naredi določene stvari, kot je spreminjanje zaščitenih lokacij ali vbrizgavanje kode v zaščitene sistemske procese. Vse razširitve jedra morajo biti podpisane in zaščite integritete sistema ne morete onemogočiti znotraj samega Mac OS X. Aplikacije z povišanimi korenskimi dovoljenji ne morejo več posegati v sistemske datoteke.

To boste najverjetneje opazili, če poskušate pisati v enega od naslednjih imenikov:

  • / Sistem
  • / koš
  • / usr
  • / sbin

OS X tega preprosto ne dovoli in prikazalo se bo sporočilo »Operacija ni dovoljena«. OS X vam tudi ne bo dovolil, da bi na enega od teh zaščitenih imenikov namestili drugo lokacijo, zato tega ni mogoče zaobiti.

Celoten seznam zaščitenih lokacij najdete na /System/Library/Sandbox/rootless.conf v vašem Macu. Vključuje datoteke, kot sta aplikaciji Mail.app in Chess.app, vključeni v sistem Mac OS X, zato jih ne morete odstraniti - niti iz ukazne vrstice kot korenski uporabnik. To pa pomeni tudi, da zlonamerna programska oprema teh programov ne more spreminjati in okuževati.

Nenaključno je bila možnost »popravila dovoljenj diska« v programu Disk Utility, ki se že dolgo uporablja za odpravljanje težav s sistemom Mac, zdaj odstranjena. Zaščita integritete sistema bi vseeno morala preprečiti poseganje v ključna dovoljenja datotek. Disk Utility je bil preoblikovan in ima še vedno možnost »Prva pomoč« za odpravljanje napak, vendar ne vključuje načina za popravilo dovoljenj.

Kako onemogočiti zaščito integritete sistema

Opozorilo : Ne delajte tega, razen če imate za to zelo dober razlog in natančno ne veste, kaj počnete! Večini uporabnikov te varnostne nastavitve ne bo treba onemogočiti. Ni namenjena preprečevanju, da bi se zapletali v sistem - namenjeni so preprečevanju, da bi se zlonamerna programska oprema in drugi slabo vedeni programi zapletali v sistem. Toda nekateri pripomočki na nizki ravni lahko delujejo le, če imajo neomejen dostop.

POVEZANE: 8 sistemskih funkcij Mac, do katerih lahko dostopate v načinu za obnovitev

Nastavitev System Integrity Protection ni shranjena v samem Mac OS X. Namesto tega je shranjen v NVRAM na vsakem posameznem Macu. Spremeniti ga je mogoče samo iz obnovitvenega okolja.

Če želite zagnati obnovitveni način, znova zaženite Mac in med zagonom držite Command + R. Vstopili boste v obnovitveno okolje. Kliknite meni »Utilities« in izberite »Terminal«, da odprete okno terminala.

V terminal vnesite naslednji ukaz in pritisnite Enter, da preverite stanje:

csrutil status

Videli boste, ali je zaščita integritete sistema omogočena ali ne.

Če želite onemogočiti zaščito integritete sistema, zaženite naslednji ukaz:

csrutil onemogoči

Če se odločite, da želite pozneje omogočiti SIP, se vrnite v obnovitveno okolje in zaženite naslednji ukaz:

csrutil omogoči

Znova zaženite Mac in začela bo veljati nova nastavitev System Integrity Protection. Korenski uporabnik bo imel zdaj popoln, neomejen dostop do celotnega operacijskega sistema in vseh datotek.

Če ste imeli pred tem nadgrajeni Mac na OS X 10.11 El Capitan datoteke, shranjene v teh zaščitenih imenikih, niso bile izbrisane. Premeščeni bodo v mapo / Library / SystemMigration / History / Migration- (UUID) / QuarantineRoot / na vašem Macu.

Zasluga za sliko: Shinji na Flickr