Descobertas seis vulnerabilidades no Netatalk

E foram descobertas seis vulnerabilidades no Netatalk. Confira os detalhes dessas falhas e veja como evitá-las.

Netatalk é a implementação do protocolo AFP, ou seja, é um programa criado que usa esse protocolo. É um programa free e opensource. É um servidor que implementa os protocolos de rede AppleTalk e Apple Filing Protocol (AFP).

Com isso, o Netatalk permite que computadores Linux(ou derivados do Unix) funcionem como servidores de arquivos para Macintosh.

Agora, foi divulgada a notícia de que seis vulnerabilidades ades foram detectadas no servidor Netatalk.

Descobertas seis vulnerabilidades no Netatalk

Descobertas seis vulnerabilidades no Netatalk
Descobertas seis vulnerabilidades no Netatalk

Sim. Descobertas seis vulnerabilidades no Netatalk. Se exploradas, essas falhas podem permitir que invasores obtenham acesso não autorizado a informações confidenciais ou geralmente causem problemas.

As vulnerabilidades detectadas podem ser exploradas remotamente, pois permitem que o invasor organize a execução de seu código como root, enviando pacotes especialmente projetados.

A importância dessas falhas se deve ao fato de muitos fabricantes de dispositivos de armazenamento (NAS) usarem o Netatalk para compartilhar arquivos e acessar impressoras de computadores Apple.

Além disso, o Netatalk também está incluído em muitas distribuições, incluindo OpenWRT, bem como Debian, Ubuntu, SUSE, Fedora e FreeBSD (embora não seja usado por padrão no último).

Relativamente aos problemas identificados, refere-se o seguinte:

  • CVE-2022-0194: O tamanho dos dados externos não foi verificado corretamente em ad_addcomment() antes de copiar para um buffer fixo. A vulnerabilidade permite que um invasor remoto sem autenticação seja capaz de executar seu código como root.
  • CVE-2022-23121: Tratamento incorreto de erros na função parse_entries() que ocorrem ao analisar entradas AppleDouble. A vulnerabilidade permite que um invasor remoto sem autenticação seja capaz de executar seu código como root.
  • CVE-2022-23122: A função setfilparams() não verifica corretamente o tamanho dos dados externos antes de copiá-los para um buffer fixo. A vulnerabilidade permite que um invasor remoto sem autenticação seja capaz de executar seu código como root.
  • CVE-2022-23124: Nenhuma validação de entrada válida no método get_finderinfo(), resultando na leitura de uma área fora do buffer alocado. A vulnerabilidade permite que um invasor remoto sem autenticação vaze informações da memória do processo. Em combinação com outras vulnerabilidades, o bug também pode ser usado para executar o código como root.
  • CVE-2022-23125: Nenhuma verificação de tamanho ao analisar o elemento len em copyapplfile() antes de copiar os dados para o buffer fixo. A vulnerabilidade permite que um invasor remoto sem autenticação seja capaz de executar seu código como root.
  • CVE-2022-23123: A validação dos dados recebidos está ausente no método getdirparams(), resultando na leitura de uma área fora do buffer alocado. A vulnerabilidade permite que um invasor remoto sem autenticação vaze informações da memória do processo.

Em relação às vulnerabilidades detectadas, é importante mencionar que as mesmas já foram corrigidas no Netatalk versão 3.1.13, além do fato de o OpenWrt ter sido removido da ramificação 22.03 e no NAS que era usado em dispositivos Western Digital o problema foi resolvido removendo o Netatalk do firmware WD.

Por fim, vale ressaltar que as versões de correção do pacote Samba 4.17.3, 4.16.7 e 4.15.12 também foram lançadas com a remoção de uma vulnerabilidade (CVE-2022-42898) nas bibliotecas Kerberos, que causa um estouro de número inteiro e gravar dados do buffer alocado ao processar os parâmetros PAC (Privileged Attribute Certificate) enviados pelo usuário autenticado.

Além do Samba, o problema também aparece nos pacotes MIT Kerberos e Heimdal Kerberos.

O relatório de vulnerabilidade do projeto Samba não detalhou a ameaça, mas o relatório Kerberos do MIT indicou que a vulnerabilidade pode levar à execução remota de código. A exploração da vulnerabilidade só é possível em sistemas de 32 bits.

“O problema afeta as configurações com KDC (Key Distribution Center) ou kadmind. Em configurações sem Active Directory, a vulnerabilidade também se manifesta em servidores de arquivos Samba que usam Kerberos.”

O problema é causado por um bug na função krb5_parse_pac(), porque o tamanho do buffer usado ao analisar campos PAC foi calculado incorretamente. Em sistemas de 32 bits, ao processar PACs especialmente criados, um erro pode fazer com que um bloco de 16 bytes passado pelo invasor seja colocado fora do buffer alocado.”

O lançamento de atualizações de pacotes nas distribuições pode ser conferido nas páginas: Debian ,  Ubuntu ,  Gentoo ,  RHEL ,  SUSE ,  Arch e  FreeBSD .

Sobre o Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.