A ReversingLabs resultados da análise de aplicação no repositório RubyGems. Normalmente, o type-squatting é usado para disseminar pacotes maliciosos, contando que um desenvolvedor distraído cometa um erro de digitação ou não perceba a diferença. Durante a pesquisa, foram identificados mais de 700 pacotes cujos nomes são semelhantes a pacotes populares e diferem por detalhes insignificantes, como a substituição de letras parecidas ou o uso de sublinhados em vez de hífens.
Em mais de 400 pacotes, foram encontrados componentes suspeitos de realizar ações maliciosas. Em particular, havia um arquivo aaa.png que incluía código executável no formato PE. Os pacotes mencionados estavam associados a duas contas, através das quais, de 16 a 25 de fevereiro de 2020, foram publicados no RubyGems , que foram baixados cerca de 95 mil vezes. Os pesquisadores informaram a administração do RubyGems e os pacotes maliciosos identificados já foram removidos do repositório.
Entre os pacotes problemáticos identificados, o mais popular foi o 'atlas-client', que à primeira vista é praticamente indistinguível do pacote legítimo ''. O pacote mencionado foi baixado 2100 vezes (um pacote normal foi baixado 6496 vezes, ou seja, os usuários erraram quase 25% das vezes). Os outros pacotes foram baixados em média 100-150 vezes e se camuflaram como outros pacotes usando técnicas semelhantes de substituição de sublinhado e hífen (por exemplo, entre : appium-lib, action-mailer_cache_delivery, activemodel_validators, asciidoctor_bibliography, assets-pipeline, apress_validators, ar_octopus-replication-tracking, aliyun-open_search, aliyun-mns, ab_split, apns-polite).
Pacotes maliciosos incluíam um arquivo PNG, no qual em vez de uma imagem, havia um arquivo executável para a plataforma Windows. O arquivo foi gerado usando a ferramenta Ocra Ruby2Exe e incluía um arquivo autoextraível com um script Ruby e um interpretador Ruby. Durante a instalação do pacote, o arquivo png era renomeado para exe e executado. Durante a execução, um arquivo com VBScript era criado e adicionado ao início automático. O VBScript malicioso mencionado analisava em loop o conteúdo da área de transferência em busca de informações que lembrassem endereços de carteiras de criptomoedas e, ao identificar um, trocava o número da carteira, contando que o usuário não notasse a diferença e transferisse os fundos para a carteira errada.
A pesquisa realizada mostrou que não é difícil conseguir adicionar pacotes maliciosos a um dos repositórios mais populares, e esses pacotes podem permanecer despercebidos, apesar do grande número de downloads. Vale ressaltar que o problema do RubyGems e afeta outros repositórios populares. Por exemplo, no ano passado, os mesmos pesquisadores encontraram no repositório NPM um pacote malicioso chamado bb-builder, utilizando uma técnica semelhante para executar um arquivo e roubar senhas. Antes disso, o backdoor estava dependente do pacote NPM event-stream e o código malicioso foi baixado cerca de 8 milhões de vezes. Pacotes maliciosos também O rebuilderd está disponível para verificação independente do Arch Linux através de compilações repetíveis.
Fonte: opennet.ru
