8.9 KiB
macOS Entitlements Perigosos e Permissões TCC
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- Você trabalha em uma empresa de cibersegurança? Você quer ver sua empresa anunciada no HackTricks? ou você quer ter acesso à última versão do PEASS ou baixar o HackTricks em PDF? Verifique os PLANOS DE ASSINATURA!
- Descubra A Família PEASS, nossa coleção exclusiva de NFTs
- Adquira o swag oficial do PEASS & HackTricks
- Junte-se ao 💬 grupo Discord ou ao grupo telegram ou siga-me no Twitter 🐦@carlospolopm.
- Compartilhe seus truques de hacking enviando PRs para o repositório hacktricks e repositório hacktricks-cloud.
{% hint style="warning" %}
Observe que as permissões que começam com com.apple
não estão disponíveis para terceiros, apenas a Apple pode concedê-las.
{% endhint %}
Alto
com.apple.rootless.install.heritable
A permissão com.apple.rootless.install.heritable
permite burlar o SIP. Verifique isto para mais informações.
com.apple.rootless.install
A permissão com.apple.rootless.install
permite burlar o SIP. Verifique isto para mais informações.
com.apple.security.get-task-allow
Essa permissão permite obter a porta da tarefa do processo executado pelo binário com essa permissão e injetar código nele. Verifique isto para mais informações.
com.apple.system-task-ports
(anteriormente chamado task_for_pid-allow
)
Essa permissão permite obter a porta da tarefa para qualquer processo, exceto o kernel. Verifique isto para mais informações.
com.apple.security.cs.debugger
Aplicativos com a Permissão da Ferramenta de Depuração podem chamar task_for_pid()
para recuperar uma porta de tarefa válida para aplicativos não assinados e de terceiros com a permissão Get Task Allow
definida como true
. No entanto, mesmo com a permissão da ferramenta de depuração, um depurador não pode obter as portas de tarefa de processos que não possuem a permissão Get Task Allow
e que, portanto, estão protegidos pela Proteção de Integridade do Sistema. Verifique isto para mais informações.
com.apple.security.cs.disable-library-validation
Essa permissão permite carregar frameworks, plug-ins ou bibliotecas sem serem assinados pela Apple ou assinados com o mesmo ID de equipe que o executável principal, portanto, um invasor pode abusar de alguma carga de biblioteca arbitrária para injetar código. Verifique isto para mais informações.
com.apple.security.cs.allow-dyld-environment-variables
Essa permissão permite usar variáveis de ambiente DYLD que podem ser usadas para injetar bibliotecas e código. Verifique isto para mais informações.
com.apple.private.apfs.revert-to-snapshot
TODO: No este relatório é mencionado que isso pode ser usado para atualizar o conteúdo protegido por SSV após uma reinicialização. Se você souber como enviar um PR, por favor!
com.apple.private.apfs.create-sealed-snapshot
TODO: No este relatório é mencionado que isso pode ser usado para atualizar o conteúdo protegido por SSV após uma reinicialização. Se você souber como enviar um PR, por favor!
kTCCServiceSystemPolicyAllFiles
Concede permissões de Acesso Total ao Disco, uma das permissões mais altas do TCC que você pode ter.
kTCCServiceAppleEvents
Permite que o aplicativo envie eventos para outros aplicativos que são comumente usados para automatizar tarefas. Controlando outros aplicativos, ele pode abusar das permissões concedidas a esses outros aplicativos.
kTCCServiceSystemPolicySysAdminFiles
Permite alterar o atributo NFSHomeDirectory
de um usuário que altera sua pasta pessoal e, portanto, permite burlar o TCC.
kTCCServiceSystemPolicyAppBundles
Permite modificar aplicativos dentro de suas pastas (dentro do app.app), o que é desativado por padrão.
Médio
com.apple.security.cs.allow-jit
Essa permissão permite criar memória que pode ser gravada e executada passando a flag MAP_JIT
para a função de sistema mmap()
. Verifique isto para mais informações.
com.apple.security.cs.allow-unsigned-executable-memory
Essa permissão permite sobrescrever ou corrigir código C, usar o NSCreateObjectFileImageFromMemory
(que é fundamentalmente inseguro) ou usar o framework DVDPlayback. Verifique aqui para mais informações.
{% hint style="danger" %} Incluir essa permissão expõe seu aplicativo a vulnerabilidades comuns em linguagens de código inseguras em relação à memória. Considere cuidadosamente se seu aplicativo precisa dessa exceção. {% endhint %}
com.apple.security.cs.disable-executable-page-protection
Essa permissão permite modificar seções de seus próprios arquivos executáveis no disco para sair forçadamente. Verifique aqui para mais informações.
{% hint style="danger" %} A permissão Disable Executable Memory Protection é uma permissão extrema que remove uma proteção de segurança fundamental do seu aplicativo, tornando possível que um invasor reescreva o código executável do seu aplicativo sem detecção. Prefira permissões mais restritas, se possível. {% endhint %}
com.apple.security.cs.allow-relative-library-loads
TODO
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- Você trabalha em uma empresa de cibersegurança? Gostaria de ver sua empresa anunciada no HackTricks? Ou gostaria de ter acesso à última versão do PEASS ou baixar o HackTricks em PDF? Confira os PLANOS DE ASSINATURA!
- Descubra The PEASS Family, nossa coleção exclusiva de NFTs
- Adquira o swag oficial do PEASS & HackTricks
- Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-me no Twitter 🐦@carlospolopm.
- Compartilhe suas técnicas de hacking enviando PRs para o repositório hacktricks e para o repositório hacktricks-cloud.