No resumo desta semana, discutimos o seguinte:
- Comandos Redis assimétricos cancelados, deixando as ligações abertas;
- Um problema de controlo de acesso em polkit que permite a um utilizador de serviço aumentar os privilégios para enraizar;
- Uma questão de controlo de acesso de alta visibilidade na Elementor Pro; e
- Reprodução deudo como um meio de criar pistas de auditoria.
CVE-2023-28858: redis-py: Ligações assimétricas canceladas deixadas em aberto
Antecedentes
redis-py é uma interface Python para a loja de valores chave Redis, suportando vários tipos de dados abstractos. Redis permite que as ligações de clientes sejam feitas através de TCP e suporta o tratamento de clientes assimétricos.
Vulnerabilidade
A vulnerabilidade inicial, CVE-2023-28858, que afecta as versões redis-py abaixo de 4.5.3, ocorre quando um comando redis assimétrico é cancelado após o comando ter sido enviado mas antes de a resposta ter sido recebida. Isto deixa uma ligação aberta que pode então ser utilizada para enviar dados de resposta a um cliente não relacionado. A causa raiz da vulnerabilidade é o tratamento de pedidos cancelados em clientes assíncronos(client.py). Os comandos enviados estarão sempre à espera de uma resposta, independentemente de o comando ser cancelado mais tarde.
Enquanto a vulnerabilidade inicial, CVE-2023-2885, foi encerrada com uma correcção, uma questão semelhante foi reaberta, citando que a correcção estava incompleta e deixou as operações não-pipelines vulneráveis. A vulnerabilidade restante, atribuída ao CVE-2023-28859, foi remendada numa correcção que abordou estes problemas de fuga de dados em ligações assimétricas em toda a linha.
Mitigação
- A vulnerabilidade foi abordada na versão redis-py 4.5.4. A actualização para a versão mais recente é a forma recomendada para resolver este problema.
polkit: configurável por defeito para o utilizador do serviço
Antecedentes
polkit é um conjunto de ferramentas para a definição e manipulação de autorizações em sistemas operacionais do tipo Unix e é tipicamente utilizado para permitir que processos não privilegiados falem com os privilegiados.
Vulnerabilidade
A vulnerabilidade ocorre quando o polkitd, o utilizador por defeito, é acedido. Este utilizador é proprietário do ficheiro onde as regras do polkit são armazenadas (com permissões definidas para 700) e poderia criar regras para conceder privilégios de raiz.
Enquanto o polkitd está definido para 'nologin', este ataque hipotético poderia levar a uma escalada dos privilégios de raiz.
A atenuação recomendada pelo relator da vulnerabilidade foi a de alterar as permissões dos ficheiros /etc/polkit-1/rules.d e /usr/share/polkit-1/rules.d para root:polkitd, 750 para evitar tal ocorrência. Estas alterações foram fundidas pouco depois.
Mitigação
- Para instalações existentes de polkit, recomenda-se alterar as permissões do /etc/polkit-1/rules.d e /usr/share/polkit-1/rules.d para root:polkitd, 750
- Não foram lançados novos lançamentos com este patch na altura deste digestor, embora seja recomendado actualizar para a versão mais recente do polkit quando este estiver disponível.
Elementor Pro: questão de controlo de acesso de alta diversidade
Antecedentes
Elementor Pro é um popular plugin WordPress premium estimado para ser utilizado por mais de 12 milhões de sites. Este plugin fornece construtores de websites de qualidade profissional, widgets, e integração com o WooCommerce para necessidades comerciais.
Vulnerabilidade
A vulnerabilidade - à qualnão foi atribuído um CVE ao escrever este digestão - afecta os sítios WordPress com a Elementor Pro e WooCommerce instalados. Especificamente, ocorre quando a função update_option é chamada por uma acção AJAX no componente do módulo WooCommerce. A função update_option só deve permitir a um utilizador privilegiado actualizar componentes específicos da loja. No entanto, a função não restringe o acesso a um utilizador altamente privilegiado, e a entrada do utilizador não é validada.
Esta vulnerabilidade pode permitir que o agressor aceda ao back-end do sítio web com uma conta de cliente típica do WooCommerce. Com isto, os atacantes poderiam criar uma conta de administrador, alterar o endereço de correio electrónico do administrador e redireccionar todo o tráfego para um site externo.
Mitigação
- Esta vulnerabilidade foi abordada na versão Elementor Pro 3.11.7. A actualização para a versão mais recente é a forma recomendada para resolver este problema.
sudo replay: criação de pistas de auditoria
Antecedentes
sudoreplay é um utilitário de linha de comando que reproduz registos de saída sudo, disponível em sudo 1.8. Pode reproduzir sessões em tempo real ou a velocidades especificadas na linha de comando.
Método
Num blog publicado no Wott, o autor Viktor Petersson demonstrou como configurar o sudoreplay e produzir logs de sudo. Com este método, os comandos executados com o sudo têm uma pista de auditoria recuperável com o sudoreplay.
Tal como referido no blogue, se o ficheiro /etc/sudo-io não estiver devidamente bloqueado, os utilizadores podem apagar a pista de auditoria limpando o /var/log/sudo-io.
Mitigação
- O envio de registos para um servidor remoto atenua o risco de ter registos adulterados em vez de os armazenar localmente.
Comentários