Kysymys:
Mikä on "juureton" ominaisuus El Capitanissa, oikeastaan?
Josh
2015-06-28 01:43:19 UTC
view on stackexchange narkive permalink

Olen juuri oppinut El Capitanin "Rootless" -ominaisuudesta ja kuulen esimerkiksi "Ei ole juurikäyttäjää", "Mikään ei voi muokata / System " ja "The World will loppu, koska emme voi saada juuria ".

Mikä on El Capitanin" Rootless "-ominaisuus teknisellä tasolla? Mitä se todella tarkoittaa käyttäjäkokemukselle ja kehittäjäkokemukselle? Toimiiko sudo -s edelleen, ja jos on, miten kokemus kuoren käytöstä root : na muuttuu?

Kolme vastused:
#1
+287
Gordon Davisson
2015-06-28 05:16:00 UTC
view on stackexchange narkive permalink

Ensinnäkin: nimi "rootless" on harhaanjohtava, koska juuritili on edelleen olemassa, ja voit silti käyttää sitä (virallinen nimi "System Integrity Protection" on tarkempi). Se, mitä se todella tekee, on rajoittaa juuritilin tehoa, joten vaikka pääset rootiksi, sinulla ei ole täyttä hallintaa järjestelmässä. Pohjimmiltaan ajatus on, että haittaohjelmien on liian helppoa saada pääkäyttäjiä (esim. Esittämällä käyttäjälle todennusvalintaikkuna, joka saa käyttäjän syöttämään järjestelmänvalvojan salasanan refleksiivisesti). SIP lisää toisen suojakerroksen, johon haittaohjelmat eivät pääse tunkeutumaan, vaikka ne juurtuvatkin. Tämän huono osa on tietysti se, että sitä on sovellettava myös asioihin, joita teet tarkoituksellisesti. Mutta juurelle asettamat rajoitukset eivät ole niin pahoja; ne eivät estä useimpia "normaalia" järjestelmän mukauttamista.

Tässä rajoitetaan, jopa juuresta:

  • Et voi muokata mitään koodissa / Järjestelmä , / bin , / sbin tai / usr (paitsi / usr / local ); tai jokin sisäänrakennetuista sovelluksista ja apuohjelmista. Vain asennusohjelma ja ohjelmistopäivitys voivat muokata näitä alueita, ja jopa he tekevät sen vain asentaessaan Applen allekirjoittamia paketteja. Mutta koska normaalit OS X -tyyliset mukautukset ovat / Library (tai ~ / Library tai / Applications ) ja unix-tyylisissä mukautuksissa ( esim. Homebrew) kirjoita / usr / local (tai joskus / etc tai / opt ), tämän ei pitäisi olla iso juttu. Se estää myös estotason kirjoittamisen käynnistyslevylle, joten et voi ohittaa sitä tällä tavalla.

    Rajoitettujen hakemistojen täydellinen luettelo (ja poikkeukset, kuten / usr / local ja muutama muu) on hakemistossa /System/Library/Sandbox/rootless.conf . Tietenkin tämä tiedosto on itsessään rajoitetulla alueella.

    Kun päivität El Capitaniksi, se siirtää kaikki "luvattomat" tiedostot rajoitetuilta alueilta kansioon / Library / SystemMigration / History / Migration- ( jokin UUID) / QuarantineRoot / .

  • Et voi liittää järjestelmän prosesseihin (esim. niistä, jotka juoksevat järjestelmän sijainneista) esimerkiksi virheenkorjauksen (tai niiden dynaamisten kirjastojen muuttamisen tai muiden asioiden muuttamisen) vuoksi. Jälleen, ei liikaa iso juttu; kehittäjät voivat silti silittää omat ohjelmansa.

    Tämä estää joitain merkittäviä asioita, kuten koodin syöttämisen sisäänrakennettuihin Apple-sovelluksiin (etenkin Finderiin). Se tarkoittaa myös, että dtrace -pohjaiset työkalut järjestelmän valvontaan (esim. opensnoop ) eivät voi seurata &-raporttia monista järjestelmäprosesseista.

  • Et voi ladata ytimen laajennuksia (avaimia), elleivät ne ole allekirjoitettu oikein (esim. Apple tai Applen hyväksymä kehittäjä). Huomaa, että tämä korvaa vanhan kext-allekirjoituksen täytäntöönpanojärjestelmän (ja vanhat tapat ohittaa sen). Mutta koska v10.10.4 Apple on ollut tapa ottaa käyttöön kolmansien osapuolien SSD-levyjen trimmaustuki, tärkein syy käyttää allekirjoittamattomia avaimia on kadonnut.

  • Sierrasta (10.12) alkaen joitain käynnistysasetusten asetuksia ei voi muuttaa (esimerkiksi joitain käynnistysdemonteja ei voi ladata).

  • Aloitetaan Mojavesta (10.14), käyttäjien henkilökohtaisten tietojen (sähköposti, yhteystiedot jne.) käyttö on rajoitettu sovelluksiin, joiden käyttäjä on hyväksynyt pääsyn kyseisiin tietoihin. Tätä pidetään yleensä erillisenä ominaisuutena (nimeltään Personal Information Protection tai TCC), mutta se perustuu SIP: hen ja SIP: n poistaminen käytöstä poistaa sen myös käytöstä. Katso: "Mitä ja miten macOS Mojave toteuttaa rajoittaakseen sovellusten pääsyä henkilötietoihin?"

  • Alkaen Catalinasta (10.15), useimpien suojaus järjestelmätiedostoja vahvistetaan tallentamalla ne erilliseen vain luku -levyyn. Tämä ei ole ehdottomasti osa SIP: tä, eikä sitä ole poistettu käytöstä poistamalla SIP käytöstä. Katso: WWDC-esitys aiheesta "Mitä uutta Applen [Catalina] -tiedostojärjestelmissä".

Jos et halua näitä rajoituksia - joko siksi, että haluat muokata järjestelmääsi sen ulkopuolella, mitä tämä sallii, tai koska kehität &-virheenkorjausta sellaisten avainten tapaan, jotka eivät ole käytännöllisiä näiden rajoitusten alla, voit kääntää SIP: n vinossa. Tällä hetkellä tämä edellyttää uudelleenkäynnistystä palautustilaan ja komennon csrutil disable suorittamista (ja voit ottaa sen samalla tavalla käyttöön myös csrutil enable -toiminnolla).

Voit poista myös valikoivasti käytöstä SIP: n osat . Esimerkiksi csrutil enable --without kext poistaa SIP: n ytimen laajennuksen rajoituksen käytöstä, mutta jättää muut suojaukset paikoilleen.

Mutta lopeta ja ajattele ennen SIP: n poistamista käytöstä, jopa väliaikaisesti tai osittain: onko sinun todella poistettava se käytöstä, vai onko olemassa parempi (SIP-yhteensopiva) tapa tehdä haluamasi? Täytyykö sinun todella muokata jotain / System / Library tai / bin tai mitä tahansa, vai voisiko se mennä parempaan paikkaan, kuten / Library tai / usr / local / bin jne? SIP voi "tuntua" rajoittavalta, jos et ole tottunut siihen, ja sen poistamiseen käytöstä on joitain oikeutettuja syitä, mutta paljon siitä, mitä se panee täytäntöön, on silti vain paras käytäntö.

Tärkeyden korostamiseksi. Jos jätät mahdollisimman suuren osan SIP: stä mahdollisimman paljon aikaa, harkitse 23. syyskuuta 2019 tapahtumia. Google julkaisi Chromelle päivityksen, joka yritti korvata symbolisen linkin koodista / var muotoon / private / var . Useimmissa järjestelmissä SIP esti tämän eikä haitallisia vaikutuksia ollut. Järjestelmissä, joissa SIP on poistettu käytöstä, se teki macOS: sta rikki ja käynnistämättömän. Yleisin syy SIP: n poistamiseen käytöstä oli hyväksymättömien (/ väärin allekirjoitettujen) ytimen laajennusten (erityisesti video-ohjainten) lataaminen. jos he olisivat vain poistaneet kext-rajoituksen käytöstä, he eivät olisi vaikuttaneet niihin. Katso virallinen Googlen tukiketju, sen superkäyttäjä Q&A ja Ars Technica -artikkeli.

Viitteet ja lisätietoja: WWDC-esitys aiheesta "Turvallisuus ja sovelluksesi", hyvä selitys Eldad Eilamilta quora.com-sivustolta, Ars Technica -katsaus El Capitanista ja Applen tukiartikkeli SIP: stä ja Rich Troutonin syvällinen sukellus (joka myös lähetti vastauksen tähän kysymykseen).

Kiva kiitos.Esitin tämän kysymyksen, koska olin liittämässä kyseiseen quora-artikkeliin toisessa Stack Exchange -kysymyksessä ja tajusin, että se ei ollut oikea liike ;-)
... Myös tämä saa minut täysin halun kirjoittaa `` kext`` tai jotain, jotta voin luoda binääritiedoston, jonka voin suorittaa komentorivillä palatakseni rajoittamattomaan pääsyyn!
jos poistan SIP: n käytöstä, saanko koko juurihakemiston vai silti olen rajoittunut / sbin-, / user- [email protected]
@androidplusios.design Jos poistat SIP: n käytöstä, root voi muokata tiedostoja missä tahansa tiedostojärjestelmässä.
Hyvä vastaus.Tämä vastaus ratkaisi eri kysymykseni useita kertoja päivityksen jälkeen El Capitaniin.
Aikooko Apple pitää "csrutil disable" -toiminnon ympärillä vai aikooko poistaa sen käytöstä jossain vaiheessa?
@Vladimir Valitettavasti minulla ei ole sisäpiiritietoja Applen suunnitelmista.Oletan, että se pysyy kiinni lähitulevaisuudessa, vaikka en olisi yllättynyt, jos se (ja itse SIP) muuttuisi merkittävästi muutamassa seuraavassa versiossa.
Väite "Se estää myös lohkotason kirjoituksia käynnistyslevylle" tarvitsee vahvistaa.Viestisi on ainoa asia, jonka löydän ja joka sanoo tämän.
@Melab Se mainitaan WWDC-esityksessä (korjasin linkin) klo 15.09 ja diassa 34 ("Kernel pysäyttää prosessit ... Kirjoitus estää suojattua sisältöä tukevien laitteiden kirjoittaminen").
On hetkiä, jolloin vihaan Applea.Arvostan sitä, että on vaikea ampua itseäsi jalkaan (vuosia sitten tapasin kerran vahingossa tekstitiedoston MBR: ään Linuxissa), mutta on aikoja, jolloin sinun täytyy esimerkiksilaittaa ylimääräinen linkki tiedostoon / usr / bin, ja muuten mukavan suojauksen poistaminen käytöstä vain tätä tarkoitusta varten on liian paternalistista ja ärsyttävää.Ylimääräinen valintaikkuna varoituksilla olisi riittänyt.
Mahtava vastaus, etenkin kohdassa, jossa selitetään mistä etsiä täydellistä luetteloa rajoitetuista hakemistoista ja poikkeuksista.
Vähemmän tunkeileva tapa näyttää olevan SIP: n poistaminen käytöstä, muokkaamalla päätiedostoa poistamaan rajoitukset vain parille binääreille, jotka todella haluat korvata, ja ottamalla SIP käyttöön uudelleen.
Erityisesti, vaikka poistaisitkin käytöstä crutilin, hiekkalaatikko jatkuu, mikä voi olla ongelma joillekin ihmisille.
#2
+97
J.J
2015-09-30 15:08:53 UTC
view on stackexchange narkive permalink

Minulle se tarkoittaa, että DTrace ei enää toimi.

DTrace on samanlainen kuin Linuxin ptrace / strace, koska sen avulla voit nähdä, mitä prosessi sanoo ytimelle. Aina kun prosessi haluaa avata tiedoston, kirjoittaa tiedoston tai avata portin jne., Sen on kysyttävä ytimeltä. Linuxissa tämä seurantaprosessi tapahtuu ytimen ulkopuolella "userland": ssä, joten käyttöoikeudet ovat melko hyvät -rakeinen. Käyttäjä voi seurata omia sovelluksiaan (korjata virheitä, löytää muistivuotoja jne.), Mutta hänen on oltava pääkäyttäjänä seuratakseen toisen käyttäjän prosessia.

DTrace OSX: ssä toimii kuitenkin ytimen tasolla, mikä tekee siitä paljon suorituskykyisempi ja tehokkaampi, mutta se vaatii pääkäyttäjän, jotta koettimet voidaan lisätä ytimeen ja tehdä siten mitä tahansa. Käyttäjä ei voi jäljittää omia prosessejaan olematta pääkäyttäjä, mutta pääkäyttäjänä hän ei voi vain seurata omia prosessejaan, vaan itse asiassa KAIKKI järjestelmän prosessit samanaikaisesti. Voit esimerkiksi katsella tiedostoa (iosnoopin avulla) ja nähdä, mikä prosessi lukee sen. Tämä on yksi kaikkien aikojen hyödyllisimmistä ominaisuuksista haittaohjelmien havaitsemiseen. Koska ydin käsittelee myös verkon IO: ta, sama pätee siellä. Wireshark havaitsee epätavallisen verkkotoiminnan, DTrace kertoo tietojen lähettämisprosessin, vaikka se olisi yhtä upotettu järjestelmään kuin ydin itse.

El Capitanista lähtien Apple on kuitenkin tarkoituksellisesti estänyt DTraceen toimimasta - kuten siinä on erityisesti kohdennettu ja eroteltu SIP: n rajoittamana. Miksi he tekisivät tämän? No, aikaisemmin Apple muutti ytimensä ja DTrace-järjestelmänsä salliakseen joidenkin prosessien kieltäytymisen valvonnasta DTrace-palvelun kautta (mikä järkytti paljon tietoturvatutkijoita tuolloin, koska jotkut prosessit eivät olleet enää juurikaan - myös haittaohjelmat). Heidän syynsä tähän oli DRM: n suojaaminen iTunesin kaltaisissa sovelluksissa, koska teoriassa joku voisi DTrace ja napata DRM: n poistamattomat tiedot prosessin muistista.

Oli kuitenkin tärkeä kiertotapa, joka antoi tutkijoille mahdollisuuden jatkaa työnsä tekemistä, ja sen tarkoituksena oli muuttaa ydintä sivuuttamatta tätä opt-out-lippua, joten DTrace-ohjelmaa voitiin silti käyttää näissä prosesseissa. Tämä oli todella hienoa, koska ohjelmat, jotka yrittivät välttää tunnistusta, palavat nyt tällä ei-DTrace-lipulla. Kaikki Apple tai pahikset, jotka halusivat piilottaa, olivat nyt näkyvissä ...

Mutta se ei toimi nyt, joten miten tämä vaikuttaa sinuun? No, se vaikuttaa sinuun sekä suoraan että epäsuorasti. Suoraan, se rajoittaa kykyäsi seurata järjestelmääsi. Suuri määrä matalan tason järjestelmänhallinta- ja valvontatyökaluja (joihin korkeamman tason työkalut perustuvat) eivät enää toimi. Epäsuora vaikutus on kuitenkin paljon suurempi - tietoturva-alan ammattilaiset luottavat järjestelmän syvään pääsyyn tunnistaakseen pahimmat uhat. Emme yksinkertaisesti voi tehdä sitä enää. Haittaohjelmia analysoitaessa on kriittistä, ettei se tiedä, että se toimii virheenkorjaimessa tai hunajapotissa. SIP: n poistaminen käytöstä kertoo kaikille ohjelmistoille, sekä pahiksille että Applelle, että tätä järjestelmää seurataan. Ei enää katsojia. Jos SIP koski tietoturvaa, he olisivat voineet kouluttaa käyttäjiä juurista - sen sijaan he poistivat sen. Viime kädessä tämä tarkoittaa, että Apple on korvannut juurisalasanan 'olla kaikki ja lopeta kaikki' suojausesteen SIP-suojausmekanismilla 'olla kaikki ja lopeta kaikki'. Tai jos sinulla on hyvä sosiaalinen suunnittelu, juurisalasana uudelleenkäynnistyksellä ...

Siellä on myös tämä: enter image description here

Ihmettelen, miksi et vain poista SIP: tä käytöstä, jos olet kiinnostunut tiettyjen ohjelmien DTracingista.
* Et voi edes tarkistaa, esimerkiksi, toimiiko levyn salaus tosiasiallisesti koneellasi, koska salauksen purkaa ydin ja nyt ei ole mitään keinoa kiertää sitä * Joten en voi esimerkiksi suorittaa `dd if = / dev/ disk0 count = 2000 |jouset?Tämä näyttää olevan ristiriidassa toisen vastauksen kanssa
Olen myös arvostellut tätä vastausta, koska se ei vastaa kysymykseen, nimittäin: ** Mikä on El Capitanin "Rootless" -ominaisuus teknisellä tasolla?Toimiiko sudo-silti edelleen, ja jos on, miten kokemus kuoren käytöstä juurina muuttuu? **.Tämä vastaus näyttää puhuvan vain DTracesta
Luulen, että vastaus puhuu selkeästi ja täsmällisesti suurelle osalle kysymystä, miten kokemus kuoren käyttämisestä juurena muuttuu.Sudo on nyt pseudo sudo.Arkkitehtuurikerros on itse asiassa lisätty.Minusta tuntuu merkitykselliseltä.Ja tämän miehen toimeentuloon.Miksi äänestää siitä alas?
Pohjimmiltaan sinun ja käyttäjien on poistettava SIP käytöstä, mikä johtaa samalla suojaustasolla kuin kaikilla Mavericksin kanssa, ja kyvyn käyttää dtracea jne. Kuin aikaisemmin.Ellei Apple päättää poistaa kykyä poistaa SIP käytöstä tulevissa julkaisuissa, en ymmärrä miksi tämän pitäisi olla ongelma.OTOH lisää turvaverkon 99 prosentille käyttäjistä.
Mitä haluat minun näkevän siellä?Järjestelmä käyttäytyy oudosti, kun se toimii kokoonpanossa, jota ei tueta?:-)
@sas08 En sano, ettei tämä vastaus sisällä hyödyllistä tietoa, vain että se ei vastaa kysymykseen.Se käsittelee vain yhtä pientä osaa kysymyksestä (DTracen puute) eikä kuvaa, mikä SIP todellisuudessa on.
@J.J entäs "dev / rdisk0" sitten?Olisin yllättynyt, jos ei ole `/ dev` -merkintää, joka tarjoaa pääsyn todelliseen laitteeseen ... Minun on asennettava Mavericks VM ja tutkittava tämä.Lähetän erillisen kysymyksen, jos teen niin.
@patrix En ymmärrä epistemologista eroa.Mitä asiat ovat ja mitä he tekevät ja miksi ne ovat olemassa, liittyvät läheisesti toisiinsa.Toki tämä viesti alkaa * en medias res * puhua yhdestä ominaisuudesta, mutta se ulottuu hyvin.Kysymys "miten tämä muuttaa kehittäjäkokemusta?"jne. on itse asiassa avoin ja subjektiivinen kutsu kehittäjiä puhumaan kokemuksistaan.Näiden kysymysten asettaminen rinnakkain epämääräisen ja yliarvostetun vastaväitteen kanssa "maailma loppuu, koska emme voi juurtua" näyttää hylkäävän vahingon ajatuksen;tämä osoittaa haittaa dev-kokemukselle.
Yllä oleva @josh oli @ josh.Derp.Ei voi korjata ... Pino "Kommenttien eheyden suojaus" -järjestelmä estää minua 5 minuutin kuluttua.
@sas08: vastaus on * epätäydellinen *, koska se käsittelee vain yhtä SIP: n monista vaikutuksista, joten se ei ole hyödyllinen.Jos vastaus vastasi oikein kysymykseen * Mikä on El Capitanin "Rootless" -ominaisuus teknisellä tasolla? * Poistan ääneni.
En aio lisätä mitään lisätietoja Joshista, koska kopioisin vain muiden vastausten sanat, enkä oikeastaan lisää mitään sivulle.Olisi ehkä parempi, jos ylin vastaus sisältäisi lisätietoja siitä, että DTrace ei enää toimi, ja sitten poistan tämän vastauksen tarpeettomana :) Toinen vastaus on vain hiilikopio lääkärechnica.com/apple/2015/09/os-x-10-11-el-capitan-the-ars-technica-review / 9 / linkitetty ylimpään kommenttiin, joten se voi mennä myös.Mutta joitain tämän vastauksen asioita, kuten DTrace, joka ei toimi edes SIP: n ollessa pois päältä sudona, ei ole missään muualla verkossa, mutta täällä
Olen vain törmännyt tähän, kun vietin liian paljon aikaa yrittäen ymmärtää, miksi en voinut käyttää dtracea selvittääksesi, miksi `Safari Networking` syö koko prosessorin.Toi Brendan Greggin blogin osoitteessa http://dtrace.org eikä voinut ymmärtää kaikkia lupavirheilmoituksia.Onko olemassa mitään helppoa tapaa poistaa se väliaikaisesti käytöstä?Voin poistaa SELinuxin käytöstä väliaikaisesti Linuxissa, voinko tehdä sen täällä?
Ainoa asia, jonka olen tähän mennessä tajunnut, on se, että jos poistat SIP: n käytöstä DTrace-sovelluksessa, voit liittää prosesseihin, jotka eivät ole rajoitettujen oikeuksien alaisia, mikä El Capista lähtien on kaikki järjestelmän mukana tuleva (kuten Safari). On "tyhmä" tapa, joka on kopioida kaikki järjestelmän binäärit uuteen hakemistoon, kuten / rootless (samalla hakemistorakenteella), sitten tehdä chroot for / rootless.Nyt kaikki on ajettu ilman oikeuksia ja voidaan liittää myös.Älykkäämpi tapa on asentaa tiedostojärjestelmä uudelleen, mutta olen peloissani sanomalla miten / miksi, koska Apple epäilemättä lukitsee tuon porsaanreiän ...
DRM: n hauska asia on, että olen ajatellut PT_DENY_ATTACHia ja kuinka se voidaan poistaa kääntämällä xnu vuosia.
No, näyttää siltä, että he korjasivat "pahan kiinnityksen" virheen, johon viittasin edellä.Onneksi "kissa ja satoja hiiriä" -peli jatkuu todennäköisesti vielä jonkin aikaa: http://www.theregister.co.uk/2016/03/30/apple_os_x_rootless/
@josh,, voit aina poistaa sipin käytöstä palataksesi sinne, missä olit ennen sipin käyttöönottoa.
Itse asiassa dtrace on kunnossa, se on vain / bin / echo on suojattu.Kiertotapana voit `cp / bin / echo / tmp / echo` ja sitten` sudo dtruss / tmp / echo hello`.
#3
+51
Rich Trouton
2015-10-07 18:47:56 UTC
view on stackexchange narkive permalink

System Integrity Protection (SIP) on yleinen suojauskäytäntö, jonka tarkoituksena on estää järjestelmätiedostoja ja prosesseja muokkaamasta kolmannet osapuolet. Tämän saavuttamiseksi sillä on seuraavat käsitteet:

  • tiedostojärjestelmän suojaus
  • ytimen laajennuksen suojaus
  • ajonaikainen suojaus

Tiedostojärjestelmän suojaus

SIP estää muita osapuolia kuin Apple lisäämästä, poistamasta tai muokkaamasta tiettyihin hakemistoihin tallennettuja hakemistoja ja tiedostoja:

  / bin / sbin / usr / System  

Apple on ilmoittanut, että kehittäjät voivat käyttää seuraavia hakemistoja:

  / usr / local / Applications / Kirjasto ~ / Kirjasto  

Kaikki / usr -hakemistot lukuun ottamatta / usr / local on suojattu SIP: llä.

SIP-suojattuja tiedostoja ja hakemistoja on mahdollista lisätä, poistaa tai muuttaa asennusohjelmapaketin kautta, jonka on allekirjoittanut Applen oma varmentaja. Tämän ansiosta Apple voi tehdä muutoksia käyttöjärjestelmän SIP-suojattuihin osiin tarvitsematta muuttaa olemassa olevia SIP-suojauksia.

Apple on varannut kyseisen varmenteen myöntäjän omaan käyttöön; Kehittäjätunnuksella allekirjoitetut asennuspaketit eivät voi muuttaa SIP-suojattuja tiedostoja tai hakemistoja.

Suojattujen hakemistojen määrittämiseksi Apple on tällä hetkellä määrittänyt kaksi kokoonpanotiedostoa tiedostojärjestelmään. Ensisijainen löytyy alla olevasta sijainnista:

  /System/Library/Sandbox/rootless.conf  

where rootless.conf listaa kaikki SIP: n suojaamat sovellukset ja ylätason hakemistot.

enter image description here

Sovellukset

SIP suojaa ydinohjelmia, jotka OS X asentaa sovelluksiin ja sovelluksiin. Tämä tarkoittaa, että OS X: n asentamia sovelluksia ei voi enää poistaa edes komentoriviltä, ​​kun käytetään pääkäyttöoikeuksia.

enter image description here

enter image description here

SIP suojaa myös useita hakemistoja ja symlinkkejä ryhmän / Applications ulkopuolella, ja näiden hakemistojen ylätaso on lueteltu myös kohdassa rootless.conf .

enter image description here

Suojausten lisäksi Apple on määrittänyt joitain poikkeuksia SIP: n suojaukseen rootless.conf-tiedostossa, ja nämä poikkeukset on merkitty asteriksilla. Nämä poikkeukset SIP: n suojauksesta tarkoittavat, että tiedostoja ja hakemistoja on mahdollista lisätä, poistaa tai muuttaa kyseisissä sijainneissa.

enter image description here

Näiden poikkeusten joukossa ovat seuraavat:

  • / System / Library / User Template - mihin OS X tallentaa mallipohjaiset hakemistot, joita se käyttää luodessaan kotikansioita uusille tileille.
  • / usr / libexec / cups - missä OS X tallentaa tulostimen kokoonpanotiedot

Apple pitää tätä tiedostoa omana ja että kolmansien osapuolten tekemät muutokset korvataan Apple.

Jos haluat nähdä, mitkä tiedostot ovat SIP: n suojaamia, käytä terminaalin ls -komentoa viiva-isolla O:

  ls -O  

SIP-suojatut tiedostot merkitään nimellä rajoitettu .

enter image description here

Yksi tärkeä ajatus on tietää, että vaikka symlinkki on SIP: n suojaama, se ei välttämättä tarkoita sitä, että hakemisto, johon he linkittävät, on suojattu SIP: llä. OS X El Capitan -käynnistysaseman juuritasolla on useita SIP-suojattuja symboleita, jotka osoittavat hakemistoihin, jotka on tallennettu juuritason hakemistoon nimeltä private. private -hakemiston sisältö tutkitaan, hakemistot, joihin kyseiset linkit viittaavat, eivät ole SIP: n suojaamia, ja sekä niitä että niiden sisältöä voidaan siirtää, muokata tai muuttaa prosesseilla pääkäyttöoikeuksien avulla.

enter image description here

Sen SIP-poikkeuksen luettelon lisäksi, jonka Apple on asettanut rootless.conf -kohdassa, on toinen luettelo SIP-poikkeuksista. Tämä luettelo sisältää useita hakemistoja ja sovellusten nimiä kolmansien osapuolten tuotteille. Kuten rootless.conf , tämäkin poissulkemisluettelo on Applen oma ja Apple korvaa mahdolliset kolmansien osapuolten tekemät muutokset siihen.

  / System / Library / Sandbox / Compatibility .bundle / Contents / Resources / polut  

Suorituksen suojaus

SIP: n suojaukset eivät rajoitu järjestelmän suojaamiseen tiedostojärjestelmän muutoksilta. On myös järjestelmäkutsuja, joiden toiminnallisuus on nyt rajoitettu.

  • task_for_pid () / processor_set_tasks () epäonnistuvat EPERM: n kanssa
  • Mach-erikoisportit nollataan execissä (2)
  • dyld-ympäristömuuttujat jätetään huomiotta
  • DTrace-koettimet eivät ole käytettävissä

SIP ei kuitenkaan estä kehittäjää tarkastamasta omia sovelluksiaan, kun he kehitetään uudelleen. Xcode-työkalut jatkavat sovellusten tarkastamista ja virheenkorjausta kehitystyön aikana.

Lisätietoja tästä suosittelen tutustumaan Applen SIP-kehittäjien ohjeisiin.

Ytimen laajennuksen suojaus

SIP estää allekirjoittamattomien ytimen laajennusten asennuksen. Ydinlaajennuksen asentamiseksi OS X El Capitaniin, jossa SIP on käytössä, ytimen laajennuksen on:

  1. allekirjoitettava kehittäjätunnuksella Kextsin allekirjoittamista varten -sertifikaatilla
  2. Asenna osoitteeseen /Kirjasto/Laajennukset

Jos asennat allekirjoittamattoman ytimen laajennuksen, SIP täytyy ensin poistaa käytöstä. > Lisätietoja SIP: n hallinnasta on alla olevassa linkissä:

System Integrity Protection - uuden tason lisääminen Applen suojausmalliin

Olisi hienoa, kun kuvakaappaukset voidaan korvata pelkkällä tekstillä, katso: [Estä kuvakaappauksia koodista ja / tai virheistä] (http://meta.stackoverflow.com/q/303812/55075).


Tämä Q & A käännettiin automaattisesti englanniksi.Alkuperäinen sisältö on saatavilla stackexchange-palvelussa, jota kiitämme cc by-sa 3.0-lisenssistä, jolla sitä jaetaan.
Loading...