Código malicioso detectado em rest-client e 10 outros pacotes Ruby

Em um pacote de joias popular cliente-resto, com um total de 113 milhões de downloads, identificado Substituição de código malicioso (CVE-2019-15224) que baixa comandos executáveis ​​e envia informações para um host externo. O ataque foi realizado através compromisso conta do desenvolvedor rest-client no repositório rubygems.org, após o qual os invasores publicaram as versões 13-14 em 1.6.10 e 1.6.13 de agosto, que incluíam alterações maliciosas. Antes do bloqueio das versões maliciosas, cerca de mil usuários conseguiram baixá-las (os invasores lançaram atualizações para versões mais antigas para não chamar a atenção).

A alteração maliciosa substitui o método "#authenticate" na classe
Identidade, após a qual cada chamada de método resulta no envio do e-mail e da senha enviados durante a tentativa de autenticação ao host do invasor. Dessa forma, são interceptados os parâmetros de login dos usuários do serviço que utilizam a classe Identity e instalam uma versão vulnerável da biblioteca rest-client, o que destaque como uma dependência em muitos pacotes Ruby populares, incluindo ast (64 milhões de downloads), oauth (32 milhões), fastlane (18 milhões) e kubeclient (3.7 milhões).

Além disso, um backdoor foi adicionado ao código, permitindo que código Ruby arbitrário seja executado por meio da função eval. O código é transmitido através de um Cookie certificado pela chave do invasor. Para informar os invasores sobre a instalação de um pacote malicioso em um host externo, são enviadas a URL do sistema da vítima e uma seleção de informações sobre o ambiente, como senhas salvas para o SGBD e serviços em nuvem. Foram registradas tentativas de download de scripts para mineração de criptomoedas usando o código malicioso mencionado acima.

Depois de estudar o código malicioso foi identificadoque mudanças semelhantes estão presentes em 10 pacotes em Ruby Gems, que não foram capturados, mas foram especialmente preparados por invasores com base em outras bibliotecas populares com nomes semelhantes, nas quais o travessão foi substituído por um sublinhado ou vice-versa (por exemplo, com base em analisador cron um pacote malicioso cron_parser foi criado e baseado em doge_coin pacote malicioso doge-coin). Pacotes de problemas:

O primeiro pacote malicioso desta lista foi publicado em 12 de maio, mas a maioria deles apareceu em julho. No total, esses pacotes foram baixados cerca de 2500 vezes.

Fonte: opennet.ru

Adicionar um comentário