Recentemente, os pesquisadores da Phylum descobriram que vários pacotes PyPI instalam extensões Chrome para roubar criptomoedas.
Mais de 450 pacotes PyPI python maliciosos foram encontrados instalando extensões de navegador maliciosas para sequestrar transações de criptomoedas feitas por meio de carteiras e sites criptográficos baseados em navegador.
Pacotes PyPI instalam extensões Chrome para roubar criptomoedas
Essa descoberta é uma continuação de uma campanha lançada inicialmente em novembro de 2022, que inicialmente começou com apenas 27 pacotes PyPi maliciosos e agora se expandiu bastante nos últimos meses.
Esses pacotes estão sendo promovidos por meio de uma campanha de typosquatting que personifica pacotes populares, mas com pequenas variações, como um personagem alterado ou trocado.
O objetivo é enganar os desenvolvedores de software para que baixem esses pacotes maliciosos em vez dos legítimos.
Como Phylum explica em um relatório publicado na sexta-feira, além de ampliar a campanha, os agentes de ameaças agora utilizam um novo método de ofuscação que envolve o uso de ideogramas chineses em funções e nomes de variáveis.
Alguns dos pacotes populares personificados no typosquatting atual incluem bitcoinlib, ccxt, cryptocompare, cryptofeed, freqtrade, selenium, solana, vyper, websockets, yfinance, pandas, matplotlib, aiohttp, beautifulsoup, tensorflow, selenium, scrapy, colorama, scikit-learn , pytorch, pygame e pyinstaller.
Os agentes de ameaças usam entre 13 e 38 versões de typosquatting para cada um dos itens acima, tentando cobrir uma ampla gama de possíveis erros de digitação que resultariam no download do pacote malicioso.
Para evitar a detecção, os agentes de ameaças empregaram um novo método de ofuscação que não estava presente na onda de novembro de 2022, agora usando uma combinação aleatória de 16 bits de ideogramas chineses para identificadores de funções e variáveis.
Os analistas da Phylum descobriram que o código usa funções Python integradas e uma série de operações aritméticas para geração de strings. Portanto, embora a ofuscação crie um resultado visualmente forte, não é muito difícil quebrá-la.
“Embora essa ofuscação seja interessante e construa um código extremamente complexo e altamente ofuscado, do ponto de vista dinâmico, isso é trivial”, diz o relatório da Phylum.
“Python é uma linguagem interpretada e o código deve ser executado. Simplesmente temos que avaliar essas instâncias e isso revela exatamente o que o código está fazendo.”
Para sequestrar transações de criptomoeda, os pacotes maliciosos PyPi criarão uma extensão de navegador Chromuim maliciosa na pasta ‘%AppData%\Extension’, semelhante aos ataques de novembro de 2022.
Em seguida, ele procura atalhos do Windows relacionados ao Google Chrome, Microsoft Edge, Brave e Opera e os sequestra para carregar a extensão maliciosa do navegador usando o argumento de linha de comando ‘–load-extension’.
Por exemplo, um atalho do Google Chrome seria sequestrado para “C:\Program Files\Google\Chrome\Application\chrome.exe –load-extension=%AppData%\\Extension”.
Quando um navegador da Web é iniciado, a extensão é carregada e o JavaScript malicioso monitora os endereços de criptomoeda copiados para a área de transferência do Windows.
Quando um endereço criptográfico é detectado, a extensão do navegador o substitui por um conjunto de endereços codificados sob o controle do agente da ameaça.
Dessa forma, qualquer valor de transação criptográfica enviado irá para a carteira do agente da ameaça em vez do destinatário pretendido.
Uma lista de expressões regulares usadas para detectar endereços de criptomoeda na área de transferência do Windows e substituí-los pelos endereços do agente da ameaça pode ser vista abaixo.
Nesta nova campanha, o agente da ameaça ampliou o número de carteiras suportadas e agora adicionou endereços de criptomoeda para Bitcoinm Ethereum, TRON, Binance Chain, Litecoin, Ripple, Dash, Bitcoin Cash e Cosmos.
Para obter uma lista completa dos pacotes maliciosos que devem ser evitados, verifique a seção inferior do relatório da Phylum.