Google revela falha grave no kernel do macOS

Google revela falha grave no kernel do macOS

4 Março, 2019 0 Por Joel Pinto

A equipa da Google dedicada ao Projeto Zero é muito conhecida pelas suas capacidades em encontrar falhas de segurança nos produtos da própria empresa, bem como naqueles que são fabricados por outras empresas. A sua equipa localiza falhas no software, reportam as mesmas de forma privada aos fabricantes e dão-lhes 90 dias para resolver o problema antes de divulgá-lo publicamente.

No ano passado, a equipa revelou vulnerabilidades no Windows 10S e no Microsoft Edge. Agora eles falam de uma falha de “alta severidade” no kernel do macOS.
Um dos especialistas de segurança do Projeto Zero descobriu que mesmo que o kernel do MacOS, o XNU, permita o comportamento de copy-on-write (COW) em alguns casos, é essencial que qualquer memória copiada não esteja disponível para modificações do processo de origem. Embora COW seja uma técnica de gestão de recursos que não é de todo uma falha, parece que a implementação da Apple certamente é.

O Project Zero descobriu que, se uma imagem de sistema de ficheiros montada de propriedade do utilizador for modificada, o subsistema virtual de gestão não será informado sobre as alterações, o que significa que um invasor pode executar acções mal-intencionadas sem que o sistema de ficheiros o saiba. A explicação detalhada pode ser encontrada abaixo:

This copy-on-write behavior works not only with anonymous memory, but also with file mappings. This means that, after the destination process has started reading from the transferred memory area, memory pressure can cause the pages holding the transferred memory to be evicted from the page cache. Later, when the evicted pages are needed again, they can be reloaded from the backing filesystem.

This means that if an attacker can mutate an on-disk file without informing the virtual management subsystem, this is a security bug. MacOS permits normal users to mount filesystem images. When a mounted filesystem image is mutated directly (e.g. by calling pwrite() on the filesystem image), this information is not propagated into the mounted filesystem.

O pesquisador informou a Apple sobre a falha em novembro de 2018, mas a empresa ainda não resolveu essa questão, apesar de já ter passado 90 dias, razão pela qual o bug agora está a ser divulgado com um rótulo de “alta severidade”. Dito isso, a Apple aceitou o problema e está a trabalhar com o Project Zero num patch para uma futura versão do macOS.
Se quiser ter mais informações sobre o assunto, basta consultar a pagina dedicada ao mesmo aqui.

Joel Pinto

Fundador do Noticias e Tecnologia, e este foi o seu segundo projeto online, depois de vários anos ligado a um portal voltado para o sistema Android, onde também foi um dos seus fundadores.