ASA-2019-00472 – FreeBSD: Vazamento de contador de referência de descritor de arquivo

Se um processo tentar transmitir direitos sobre um socket UNIX-domain e um erro fizer com que a tentativa falhe, as referências adquiridas nos direitos não serão liberadas e vazarão. Esse bug pode ser usado para fazer com que o contador de referências fique livre e libere a estrutura de arquivo correspondente. Um usuário local pode explorar o bug para obter privilégios de root ou escapar de uma jail.

ASA-2019-00470 – FreeBSD: Overflow no contador de referências no sistema de arquivo mqueue

Chamadas de sistema operando em descritores de arquivo obtêm uma referência a struct file relevante que, devido a um erro de programação, nem sempre foi retornada, o que poderia ser usado para causar overflow no contador da struct file afetada. Um usuário local pode usar essa falha para obter acesso a arquivos, diretórios, sockets etc. abertos por processos pertencentes a outros usuários. Se a struct file obtida representar um diretório de fora da jail do usuário, ela poderá ser usado para acessar arquivos fora da jail. Se o usuário em questão é root em uma jail, eles podem obter privilégios de root no sistema host.

ASA-2019-00045 – FreeBSD: Vazamento de contador de referência de descritor de arquivo

O FreeBSD 12.0 tenta lidar com o caso em que o processo de recebimento não fornece um buffer suficientemente grande para uma mensagem de controle de entrada contendo direitos. Em particular, para evitar o vazamento dos descritores correspondentes na tabela de descritores do processo de recebimento, o kernel manipula o caso de truncamento fechando os descritores referenciados pela mensagem descartada. O código que executa esta operação não conseguiu liberar uma referência obtida no arquivo correspondente a um direito recebido. Esse bug pode ser usado para fazer com que o contador de referência wrap around e libere a estrutura do arquivo.