Google revela falha não corrigida de “alta gravidade” no kernel macOS da Apple

O pesquisador de segurança cibernética da divisão Project Zero, do Google, divulgou detalhes e exploração de prova de conceito de uma vulnerabilidade de segurança de alta gravidade no sistema operacional macOS, depois que a Apple não lançou um patch no prazo de 90 dias após ser notificado.

De acordo com o TheHackerNews, a falha foi descoberta pelo pesquisador do Project Zero, Jann Horn, e demonstrado por Ian Beer, a vulnerabilidade reside na maneira como o kernel do MacOS XNU permite que um atacante manipule imagens do sistema de arquivos sem informar o sistema operacional.

A falha pode permitir que um invasor ou um programa mal-intencionado ignore a funcionalidade de cópia na gravação (COW) para causar alterações inesperadas na memória compartilhada entre os processos, levando a ataques de corrupção de memória.

Copy-On-Write, também conhecido como COW, é uma estratégia de otimização de gerenciamento de recursos usada na programação de computadores.

Em geral, se qualquer processo (destino) exigir um arquivo ou dados que já estão na memória, mas criados por outro processo (origem), os dois processos podem compartilhar o mesmo recurso em vez de criar uma nova cópia, reduzindo significativamente o consumo de recursos de cópias não modificadas.

No entanto, se o processo de origem precisar fazer algumas alterações nos dados, a função de cópia na gravação entra em ação e cria uma cópia na memória para que o processo de destino ainda possa ter acesso aos dados.

De acordo com o pesquisador do Project Zero, no sistema operacional macOS da Apple, esse comportamento copy-on-write funciona não apenas com a memória anônima, mas também manipula eficientemente as tabelas de páginas e os mapeamentos de memória.

“Isso significa que, depois que o processo de destino começar a ler a partir da área de memória transferida, a pressão da memória poderá fazer com que as páginas que armazenam a memória sejam removidas do cache de páginas”, Para saber mais sobre a vulnerabilidade clique aqui.

“Mais tarde, quando as páginas removidas forem necessárias novamente, elas podem ser recarregadas a partir do sistema de arquivos de apoio.”

O pesquisador do Google descobre que quando uma imagem de sistema de arquivos montada é mutada diretamente (por exemplo, chamando pwrite () na imagem do sistema de arquivos), essa informação não é propagada no sistema de arquivos montado.

Assim, um programa mal-intencionado ou um invasor pode simplesmente fazer alterações nas páginas despejadas armazenadas no disco sem informar o subsistema de gerenciamento virtual, enganando os processos de destino para carregar conteúdo mal-intencionado manipulado na memória.

“É importante que a memória copiada esteja protegida contra modificações posteriores pelo processo de origem; caso contrário, o processo de origem poderá explorar as leituras duplas no processo de destino”, diz a resaercher.

Além dessa vulnerabilidade, o pesquisador do Project Zero também encontrou um bypass de comportamento de copy-on-write semelhante ( CVE-2019-6208 ) abusando de outra função no sistema operacional macOS.

O pesquisador notificou a Apple sobre as vulnerabilidades em novembro de 2018 e a empresa reconheceu a existência das falhas. Enquanto a Apple corrigiu a última falha, a antiga falha continua sem solução mesmo após o prazo de 90 dias que o Project Zero fornece às empresas afetadas.

Assim, os pesquisadores tornaram a vulnerabilidade pública com um rótulo de “alta gravidade” e também lançaram o código de prova de conceito que demonstra o bug, que permanece sem correção no momento da escrita.

A Apple está atualmente trabalhando com a equipe do Project Zero em uma correção para a vulnerabilidade, que deve ser incluída em uma versão futura do macOS.