Atualização do OpenWrt 19.07.1 com remoção da vulnerabilidade de falsificação de pacotes

Versões corretivas da distribuição OpenWrt foram publicadas 18.06.7 и 19.07.1, em que é eliminado vulnerabilidade perigosa (CVE-2020-7982) no gerenciador de pacotes opkg, que permite realizar um ataque MITM e substituir o conteúdo de um pacote baixado do repositório. Devido a um erro no código de verificação da soma de verificação, um invasor pode criar condições sob as quais as somas de verificação SHA-256 presentes no índice de pacotes assinados digitalmente serão ignoradas, o que permite contornar mecanismos de verificação da integridade dos recursos ipk baixados.

O problema vem aparecendo desde fevereiro de 2017, após adições código para ignorar espaços iniciais antes da soma de verificação. Devido a um erro ao pular espaços, o ponteiro para a posição na linha não foi deslocado e o loop de decodificação da sequência hexadecimal SHA-256 retornou imediatamente o controle e retornou uma soma de verificação de comprimento zero.

Como o gerenciador de pacotes opkg no OpenWrt é iniciado com direitos de root, no caso de um ataque MITM, um invasor pode silenciosamente fazer alterações no pacote ipk baixado do repositório enquanto o usuário está executando o comando “opkg install” e organizar o execução de seu código com direitos de root adicionando seus próprios scripts manipuladores ao pacote, chamados durante a instalação. Para explorar a vulnerabilidade, o invasor também deve providenciar a substituição de um índice de pacote correto e assinado (por exemplo, fornecido em downloads.openwrt.org). O tamanho do pacote modificado deve corresponder ao tamanho original definido no índice.

Em uma situação em que você precisa fazer sem atualizar todo o firmware, você pode atualizar apenas o gerenciador de pacotes opkg executando os seguintes comandos:

cd / tmp
atualização opkg
baixar opkg
zcat ./opkg-lists/openwrt_base | grep -A10 "Pacote: opkg" | grep SHA256sum
sha256sum ./opkg_2020-01-25-c09fe209-1_*.ipk

Em seguida, compare as somas de verificação exibidas e, se corresponderem, execute:

opkg install ./opkg_2020-01-25-c09fe209-1_*.ipk

Novas versões também eliminam mais um vulnerabilidade na biblioteca libubox, o que pode levar a um buffer overflow quando processado em uma função blobmsg_format_json dados binários ou JSON serializados especialmente formatados. A biblioteca é usada em componentes de distribuição como netifd, procd, ubus, rpcd e uhttpd, bem como no pacote Nenhum (Participou do sysUpgrade CLI). Um buffer overflow ocorre quando grandes atributos numéricos do tipo “duplo” são transmitidos em blocos blob. Você pode verificar a vulnerabilidade do seu sistema executando o comando:

$ubus chama luci getFeatures\
'{ "banik": 00192200197600198000198100200400.1922 }'

Além de eliminar vulnerabilidades e corrigir erros acumulados, o lançamento OpenWrt 19.07.1 também atualizou a versão do kernel Linux (de 4.14.162 para 4.14.167), resolveu problemas de desempenho ao usar frequências de 5GHz e melhorou o suporte para Ubiquiti Rocket M Titânio, dispositivos Netgear WN2500RP v1,
Zyxel NSA325, Netgear WNR3500 V2, Archer C6 v2, Ubiquiti EdgeRouter-X, Archer C20 v4, Archer C50 v4 Archer MR200, TL-WA801ND v5, HiWiFi HC5962, Xiaomi Mi Router 3 Pro e Netgear R6350.

Fonte: opennet.ru

Adicionar um comentário