
O sistema macOS opera com a maioria dos processos em um ambiente de sandbox restrito, tanto para serviços da Apple quanto para aplicativos de terceiros. Quando um invasor consegue executar código remotamente (RCE) a partir desses processos, suas capacidades ficam limitadas. O desafio seguinte para o atacante é contornar a sandbox para obter permissões de execução ampliadas e acesso a arquivos mais abrangente.
Através da análise das vulnerabilidades existentes, identifiquei uma superfície de ataque significativa que havia sido negligenciada, resultando na descoberta de várias novas vulnerabilidades de escape da sandbox, incluindo CVE-2023-27944, CVE-2023-32414, CVE-2023-32404, entre outras. "As aplicações sem App Sandbox têm acesso irrestrito a todos os dados do usuário e recursos do sistema, enquanto as aplicações com restrições de sandbox possuem acesso limitado", afirmou a Apple em seu guia de design.
No contexto do macOS, as aplicações geralmente estão sujeitas a restrições da App Sandbox, que limita as operações de arquivo ao caminho do contêiner de dados da aplicação. Por exemplo, arquivos criados por uma aplicação sandbox são automaticamente marcados como em quarentena. Além disso, os serviços da Apple são executados em um contexto de Service Sandbox, que apresenta diferenças significativas em relação ao sandbox de aplicações comuns, como a não imposição de quarentena para arquivos gerados.
Existem métodos comuns de ataque, incluindo a exploração de serviços Mach disponíveis listados no perfil da sandbox da aplicação, que permite ao invasor enumerar serviços acessíveis. No entanto, uma nova superfície de ataque foi descoberta em serviços XPC que existem no domínio PID, onde não há verificações adicionais de sandbox para os clientes XPC que fazem solicitações.
Entre as vulnerabilidades identificadas, a CVE-2023-32414 permite que um aplicativo sandboxed extraia arquivos sem que esses sejam marcados como em quarentena, enquanto a CVE-2023-41077 explora um serviço XPC que permite a leitura de arquivos fora do contêiner sandbox. Esses exemplos demonstram como certos serviços XPC podem ser manipulados para facilitar a execução de código arbitrário ou o acesso a dados restritos.
O processo de mitigação para essas vulnerabilidades tem sido ativo, com a Apple implementando patches para resolver falhas de segurança antes do lançamento de novas versões do sistema operacional. "Essas vulnerabilidades, uma vez descobertas, destacam a importância de manter um sistema seguro e de revisar as permissões e entitlements atribuídos aos serviços e aplicações", comentou um especialista em segurança.
Concluindo, a pesquisa sobre as vulnerabilidades de escape da sandbox no macOS revelou não apenas falhas significativas, mas também a necessidade de um monitoramento contínuo e melhorias nas práticas de segurança da Apple. Os desenvolvedores são incentivados a explorar essas superfícies de ataque para aprimorar a segurança de suas aplicações e proteger os usuários de potenciais ameaças.
Confira os últimos vídeos publicados no canal