Translated message

A translation of this page exists in English.

Warning message

This translation is outdated. For the most up-to-date information, please refer to the English version.

vulnerabilidades do libuser (CVE-2015-3245 and CVE-2015-3246)

O Red Hat Product Security reconheceu duas vulnerabilidades de segurança no utilitáriouserhelper (parte do pacote usermode) e na biblioteca libuser. Usuários locais autenticados com acesso ao terminal, poderiam combinar estas vulnerabilidades para obter escalação de privilégio local para usuário root. Estas falhas receberam CVE-2015-3245 e CVE-2015-3246. Na combinação, as vulnerabilidades foram classificadas como tendo um impacto Importante. A Red Hat deseja agradecer a Qualys por relatar estes problemas.

Informações de Fundo

A biblioteca libuser implementa uma interface padronizada para manipular e administrar as contas de usuário e grupo. O programauserhelper, o qual foi incluído no pacoteusermode, fornece uma interface não interativa e básica para mudar uma senha de usuário, o campo GECOS e o terminal.

Impacto

Veja as seguintes duas seções para descrição de duas vulnerabilidades relacionadas.

Condição da corrida na atulaização do arquivo de senha (CVE-2015-3246, Important)

Uma falha foi encontrada na forma que a biblioteca libuser lidou com o arquivo /etc/passwd file. Mesmo que os programas tradicionais como o passwd, chfn, e chsh funcionem em uma cópia temporária do /etc/passwd e eventualmente usem a função rename() para renomear a cópia temporária, o libuser modificava o /etc/passwd diretamente. Infelizmente, se algo desse errado durante estas modificações, o libuser podia deixar o /etc/passwd em estado inconsistente.

Este comportamento podia resultar em um ataque de recusa de serviço local. Além disso, quando combinado com uma segunda vulnerabilidade (CVE-2015-3245, described below), ele poderia resultar na escalação de privilégios para o usuário root.

Veja a tabela abaixo para links de supervisões de segurança que tratam deste problema.

Falta de validação do conteúdo de campo do GECOS (CVE-2015-3245, Moderate)

Descobriu-se que a função chfn do utilitário userhelper não filtrava propriamente os caracteres de nova linha. A função chfn implementada pelo utilitário userhelper percebeu que os campos fornecidos na linha de comando eram válidos (ou seja, não continham caracteres proibidos). Infelizmente, estes caracteres proibidos (:,=) não incluíam o caractere \n e permitia que atacantes locais injetassem caracteres de nova linha no arquivo /etc/passwd e alterassem este arquivo de formas inesperadas.

Um atacante local podia usar esta falha para interromper o arquivo /etc/passwd, o qual podia resultar em um ataque de recusa de serviço no sistema.

Nota: Este problema, embora atribuído inicialmente ao pacote usermode, está sendo reparado com uma atualização para libuser pois o libuser precisou mudar para lidar com a vulnerabilidade CVE-2015-3246.

Supervisões de Segurança

Todas as versões da bibliotecalibuser incluídas no Red Hat Enterprise Linux 6 e 7 foram afetadas por estas falhas. Veja a tabela abaixo para obter links para supervisões de segurança respectivas, que reparam este problema:

Produto Supervisão
Red Hat Enterprise Linux 6 RHSA-2015:1482
Red Hat Enterprise Linux 7 RHSA-2015:1483

 
Este problema afeta também a Red Hat Enterprise Linux 5, a qual está agora em Fase de Produção 3 do ciclo de vida de manutenção e suporte. Portanto, o problema não tem planos de ser tratado em atualizações futuras no Red Hat Enterprise Linux 5. Para informações adicionais, consulte o Red Hat Enterprise Linux Life Cycle.

Atomic Host & Containers

Todas as imagens de containers oficiais lançadas, incluem uma versão da vulnerabilidade da biblioteca do 'libuser'. Usuários preocupados com este fato, podem usar esta função de atualização do yum embutida dos containers para versões reparadas (veja 'Resolução' abaixo). Isto resolve a vulnerabilidade. As construções atualizadas destes containers refletindo estas atualizações serão lançadas em breve.

O Atomic Host inclui uma versão vulnerável da biblioteca do 'libuser'. É possível atualizar quaisquer containers acomodados pelo Atomic para versões reparadas destes pacotes usando sua funcão do yum embutida. Não é possível explorar o Atomic host de dentro de um container utilizando estes problemas. A próxima atualização cumulativa incluirá reparos para o Atomic Host.

Imagens e Equipamentos do Cloud

Todas as imagens de equipamento e cloud, oficiais lançadas, incluem uma versão da vulnerabilidade da biblioteca do 'libuser'. Usuários preocupados com este fato, podem usar esta função de atualização do yum embutida dos containers para versões reparadas (veja 'Resolução' abaixo). Isto resolve a vulnerabilidade. As rotações recursivas destes containers, que refletem estas atualizações serão lançadas em breve.

Serviços do Amazon Web

O Atomic Host inclui uma versão vulnerável da biblioteca do 'libuser'. É possível atualizar quaisquer sistemas para versões reparadas destes pacotes usando sua função do yum embutida (veja 'Resolução' abaixo)

Imagens do RHEV-H

As imagens de equipamento do Red Hat Enterprise Virtualization Hypervisor, incluem uma versão da vulnerabilidade da biblioteca do 'libuser'. Estas imagens devem somente ser utilizadas para máquinas virtuais de host e nunca devem possuir usuários locais não confiáveis.

Não é possível atacar os hosts doRHEV-H de dentro de uma máquina virtual, explorando estes problemas. Uma atualização futura da imagem do RHEV-H irá lidar com esta vulnerabilidade.

Resolução

Para eliminar a possibilidade de exploração, instale os pacotes atualizados do 'libuser' que foram disponibilizados através dos conselheiros listados na tabela acima.

Para instalar as atualizações, use o gerenciador de pacotes yum da seguinte forma:

yum update

Para atualizar somente o pacote 'libuser' e suas dependências, use:

yum update libuser

Mitigação

Devido à forma que o 'libuser' funciona, somente os usuários que possuem contas já listadas no /etc/passwd podem explorar estas vulnerabilidades, e o usuário precisa prover a senha de conta como parte do ataque. Estes requerimentos significam que a exploração por contas listadas somente em LDAP (ou algumas outras fontes de dados NSS), ou por contas de sistema sem uma senha válida, não é possível.

Em sistemas onde a atualização do 'libuser' não é possível, os administradores de sistema podem adicionar as regras do 'pam_warnepam_denynos dois arquivos,/etc/pam.d/chfne/etc/pam.d/chsh', para prevenir usuários não root de usarem serviços vulneráveis. Com estas edições, os arquivos devem conter:

#%PAM-1.0
auth       sufficient   pam_rootok.so
auth precisava do pam_warn.so
auth precisava do pam_deny.so
auth       inclui      system-auth
account    inclui     system-auth
password   inclui     system-auth
session    inclui     system-auth

Depois disso, tentativas por usuários sem privilégios a usarem o chfn e chsh (e a função respectiva no programa 'userhelper') irão falhar e seram autenticadas (por padrão no /var/log/secure).

Comments