cURL 7.71.0 lançado com correções para duas falhas

Foi lançado o cURL 7.71.0 com correções para duas falhas. Confira os detalhes dessa atualização e veja como instalar no Linux.

cURL é um utilitário de download usado para receber e enviar dados pela rede, pois fornece a capacidade de formar uma solicitação de maneira flexível, definindo parâmetros como cookie, user_agent, referer e qualquer outro cabeçalho.

O cURL suporta HTTP, HTTPS, HTTP/2.0, HTTP/3, SMTP, IMAP, POP3, Telnet, FTP, LDAP, RTSP, RTMP e outros protocolos de rede. Ao mesmo tempo, uma atualização paralela foi lançada na biblioteca libcurl, que fornece uma API para usar todas as funções de curvatura em programas em linguagens como C, Perl, PHP, Python.

Agora, a nova versão de atualização, o cURL 7.71.0 já está disponível, focada na solução de dois erros graves que permitem o acesso a senhas e também a possibilidade de sobrescrever arquivos.

Novidades do cURL 7.71.0

cURL 7.71.0 lançado com correções para duas falhas
cURL 7.71.0 lançado com correções para duas falhas

Esta nova versão resolve duas falhas, que são as seguintes:

  • Vulnerabilidade CVE-2020-8177: Isso permite que um invasor substitua um arquivo local no sistema ao acessar um servidor de ataque controlado. O problema se manifesta apenas ao usar as opções “-J” (“–remote-header-name”) e “-i” (“–head”) simultaneamente.
  • A opção “-J” permite salvar o arquivo com o nome especificado no cabeçalho “Disposição de conteúdo”. Se um arquivo com o mesmo nome já existir, o programa curl geralmente se recusa a sobrescrever, mas se a opção “-i” estiver presente, a lógica de verificação será violada e o arquivo será sobrescrito (a verificação é executada no recebendo o corpo da resposta, mas com a opção “-i”, os cabeçalhos HTTP saem primeiro e têm tempo para persistir antes de processar o corpo da resposta). Somente cabeçalhos HTTP são gravados no arquivo.

  • Vulnerabilidade CVE-2020-8169: Isso pode causar um vazamento no servidor DNS de algumas senhas para acessar o site (Básico, Resumo, NTLM, etc.).
  • Quando o caractere “@” é usado em uma senha, que também é usada como delimitador de senha na URL, quando um redirecionamento HTTP está ativado, o curl envia uma parte da senha após o caractere “@” junto com o domínio para determinar o nome.

    Por exemplo, se você especificar a senha “passw @ passw” e o nome de usuário “user”, o curl gerará o URL “https://user:passw@[email protected]/path” em vez de “https:user:passw%[email protected]/path” e envie uma solicitação para resolver o host “[email protected]” em vez de “example.com”.

    O problema se manifesta ativando o suporte para redirecionadores HTTP relativos (eles são desativados por meio de CURLOPT_FOLLOWLOCATION).

    No caso de usar o DNS tradicional, o provedor de DNS e o invasor podem encontrar informações sobre uma parte da senha, que podem interceptar o tráfego da rede de trânsito (mesmo que a solicitação original tenha sido feita por HTTPS, pois O tráfego DNS não está criptografado).

    Ao usar o DNS sobre HTTPS (DoH), o vazamento é limitado à instrução DoH.

    Por fim, outra alteração integrada à nova versão é a adição da opção “-retry-all-errors” para tentativas repetidas de executar operações quando ocorre um erro.

    Para saber mais sobre essa versão do cURL, acesse a nota de lançamento.

    Como instalar ou atualizar o cURL 7.71.0

    cURL está disponível por padrão na maioria das distribuições Linux, então, para instalar a versão mais recente, basta usar o gerenciador de pacotes do sstema.

    O que está sendo falado no blog

    PinLinkedIn
    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.

    Deixe um comentário

    Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.