macOS Dangerous Entitlements & TCC perms
Let op dat toestemmings wat begin met com.apple
nie beskikbaar is vir derdepartye nie, slegs Apple kan hulle toeken.
Hoë
com.apple.rootless.install.heritable
com.apple.rootless.install.heritable
Die toestemming com.apple.rootless.install.heritable
maak dit moontlik om SIP te omseil. Kyk hier vir meer inligting.
com.apple.rootless.install
com.apple.rootless.install
Die toestemming com.apple.rootless.install
maak dit moontlik om SIP te omseil. Kyk hier vir meer inligting.
com.apple.system-task-ports
(voorheen genoem task_for_pid-allow
)
com.apple.system-task-ports
(voorheen genoem task_for_pid-allow
)Hierdie toestemming maak dit moontlik om die taakpoort vir enige proses te kry, behalwe die kernel. Kyk hier vir meer inligting.
com.apple.security.get-task-allow
com.apple.security.get-task-allow
Hierdie toestemming maak dit vir ander prosesse met die com.apple.security.cs.debugger
toestemming moontlik om die taakpoort van die proses wat deur die binêre lêer met hierdie toestemming uitgevoer word, te kry en kode daarop in te spuit. Kyk hier vir meer inligting.
com.apple.security.cs.debugger
com.apple.security.cs.debugger
Apps met die Debugging Tool Toestemming kan task_for_pid()
aanroep om 'n geldige taakpoort vir ondertekende en derdeparty-apps met die Get Task Allow
toestemming wat op waar
is, te kry. Selfs met die debugging tool toestemming kan 'n debugger nie die taakpoorte kry van prosesse wat nie die Get Task Allow
toestemming het nie, en wat dus beskerm word deur die System Integrity Protection. Kyk hier vir meer inligting.
com.apple.security.cs.disable-library-validation
com.apple.security.cs.disable-library-validation
Hierdie toestemming maak dit moontlik om raamwerke, invoegtoepassings, of biblioteke te laai sonder om deur Apple onderteken te wees of met dieselfde span-ID as die hoofuitvoerbare lêer onderteken te wees, sodat 'n aanvaller 'n arbitêre biblioteeklading kan misbruik om kode in te spuit. Kyk hier vir meer inligting.
com.apple.private.security.clear-library-validation
com.apple.private.security.clear-library-validation
Hierdie toestemming is baie soortgelyk aan com.apple.security.cs.disable-library-validation
maar in plaas daarvan om biblioteekvalidering direk uit te skakel, maak dit dit vir die proses moontlik om 'n csops
stelseloproep te maak om dit uit te skakel.
Kyk hier vir meer inligting.
com.apple.security.cs.allow-dyld-environment-variables
com.apple.security.cs.allow-dyld-environment-variables
Hierdie toestemming maak dit moontlik om DYLD-omgewingsveranderlikes te gebruik wat gebruik kan word om biblioteke en kode in te spuit. Kyk hier vir meer inligting.
com.apple.private.tcc.manager
of com.apple.rootless.storage
.TCC
com.apple.private.tcc.manager
of com.apple.rootless.storage
.TCC
Volgens hierdie blog en hierdie blog, maak hierdie toestemmings dit moontlik om die TCC databasis te verander.
system.install.apple-software
en system.install.apple-software.standar-user
system.install.apple-software
en system.install.apple-software.standar-user
Hierdie toestemmings maak dit moontlik om sagteware te installeer sonder om toestemming van die gebruiker te vra, wat nuttig kan wees vir 'n privilege-escalation.
com.apple.private.security.kext-management
com.apple.private.security.kext-management
Toestemming wat nodig is om die kernel te vra om 'n kernel-uitbreiding te laai.
com.apple.private.icloud-account-access
com.apple.private.icloud-account-access
Die toestemming com.apple.private.icloud-account-access
maak dit moontlik om te kommunikeer met die com.apple.iCloudHelper
XPC-diens wat iCloud-token sal voorsien.
iMovie en Garageband het hierdie toestemming.
Vir meer inligting oor die uitbuiting om icloud-tokens van daardie toestemming te kry, kyk na die geselskap: #OBTS v5.0: "Wat Gebeur op jou Mac, Bly op Apple se iCloud?!" - Wojciech Regula
com.apple.private.tcc.manager.check-by-audit-token
com.apple.private.tcc.manager.check-by-audit-token
TODO: Ek weet nie wat dit toelaat om te doen nie
com.apple.private.apfs.revert-to-snapshot
com.apple.private.apfs.revert-to-snapshot
TODO: In hierdie verslag word genoem dat dit gebruik kan word om die SSV-beskermde inhoud na 'n herlaai op te dateer. As jy weet hoe om dit te doen, stuur asseblief 'n PR!
com.apple.private.apfs.create-sealed-snapshot
com.apple.private.apfs.create-sealed-snapshot
TODO: In hierdie verslag word genoem dat dit gebruik kan word om die SSV-beskermde inhoud na 'n herlaai op te dateer. As jy weet hoe om dit te doen, stuur asseblief 'n PR!
keychain-access-groups
keychain-access-groups
Hierdie toestemming lys sleutelhanger groepe waarop die aansoek toegang het:
kTCCServiceSystemPolicyAllFiles
kTCCServiceSystemPolicyAllFiles
Geeft Volle Skyftoegang toestemmings, een van die hoogste TCC-toestemmings wat jy kan hê.
kTCCServiceAppleEvents
kTCCServiceAppleEvents
Laat die app toe om gebeurtenisse na ander toepassings te stuur wat gewoonlik gebruik word vir outomatiese take. Deur ander programme te beheer, kan dit misbruik maak van die toestemmings wat aan hierdie ander programme verleen is.
Soos om hulle die gebruiker vir sy wagwoord te laat vra:
Of maak hulle willekeurige aksies uitvoer.
kTCCServiceEndpointSecurityClient
kTCCServiceEndpointSecurityClient
Laat, onder andere toestemmings, toe om die gebruikers TCC-databasis te skryf.
kTCCServiceSystemPolicySysAdminFiles
kTCCServiceSystemPolicySysAdminFiles
Laat toe om die NFSHomeDirectory
attribuut van 'n gebruiker te verander wat sy tuisvouerpad verander en dus toelaat om TCC te omseil.
kTCCServiceSystemPolicyAppBundles
kTCCServiceSystemPolicyAppBundles
Laat toe om lêers binne app-bundels (binne app.app) te wysig, wat standaard nie toegelaat word nie.
Dit is moontlik om te kontroleer wie hierdie toegang het in Sisteeminstellings > Privaatheid & Sekuriteit > App-bestuur.
kTCCServiceAccessibility
kTCCServiceAccessibility
Die proses sal in staat wees om die macOS-toeganklikheidskenmerke te misbruik, wat beteken dat hy byvoorbeeld toetsaanslae kan indruk. Hy kan dus versoek om toegang te kry om 'n app soos Finder te beheer en die dialoogvenster met hierdie toestemming goed te keur.
Medium
com.apple.security.cs.allow-jit
com.apple.security.cs.allow-jit
Hierdie toestemming laat toe om geheue te skep wat skryfbaar en uitvoerbaar is deur die MAP_JIT
vlag na die mmap()
-sisteemfunksie te stuur. Kyk hier vir meer inligting.
com.apple.security.cs.allow-unsigned-executable-memory
com.apple.security.cs.allow-unsigned-executable-memory
Hierdie toestemming laat toe om C-kode te oorheers of te lap, gebruik die lank verouderde NSCreateObjectFileImageFromMemory
(wat fundamenteel onveilig is), of gebruik die DVDPlayback-raamwerk. Kyk hier vir meer inligting.
Die insluiting van hierdie toestemming stel jou app bloot aan algemene kwesbaarhede in geheue-onveilige kodeland. Oorweeg sorgvuldig of jou app hierdie uitsondering nodig het.
com.apple.security.cs.disable-executable-page-protection
com.apple.security.cs.disable-executable-page-protection
Hierdie toestemming laat toe om afsnitte van sy eie uitvoerbare lêers op skyf te wysig om kragtig te verlaat. Kyk hier vir meer inligting.
Die Uitskakelbare Uitvoerbare Geheuebeskermingstoestemming is 'n ekstreme toestemming wat 'n fundamentele sekuriteitsbeskerming van jou app verwyder, wat dit moontlik maak vir 'n aanvaller om jou app se uitvoerbare kode te herskryf sonder opsporing. Gee verkieslik nouer toestemmings as moontlik.
com.apple.security.cs.allow-relative-library-loads
com.apple.security.cs.allow-relative-library-loads
TODO
com.apple.private.nullfs_allow
com.apple.private.nullfs_allow
Hierdie toestemming laat toe om 'n nullfs-lêersisteem te koppel (standaard verbode). Gereedskap: mount_nullfs.
kTCCServiceAll
kTCCServiceAll
Volgens hierdie blogpos, hierdie TCC-toestemming gewoonlik in die vorm gevind:
Laat die proses toe om vir al die TCC-toestemmings te vra.
kTCCServicePostEvent
kTCCServicePostEvent
Last updated