{"id":551986,"date":"2026-04-23T14:15:00","date_gmt":"2026-04-23T17:15:00","guid":{"rendered":"https:\/\/www.portaltela.com\/noticias\/2026\/04\/23\/novo-virus-ataca-npm-para-roubar-credenciais-de-usuarios\/"},"modified":"2026-04-23T14:15:00","modified_gmt":"2026-04-23T17:15:00","slug":"novo-virus-ataca-npm-para-roubar-credenciais-de-usuarios","status":"publish","type":"post","link":"https:\/\/www.portaltela.com\/noticias\/ciencia\/2026\/04\/23\/novo-virus-ataca-npm-para-roubar-credenciais-de-usuarios\/","title":{"rendered":"Novo v\u00edrus ataca NPM para roubar credenciais de usu\u00e1rios"},"content":{"rendered":"<p>Um novo ataque \u00e0 cadeia de suprimentos do npm foi identificado por pesquisadores da Socket e da StepSecurity. O malware atua como worm, roubando credenciais de desenvolvedores e usando tokens de publica\u00e7\u00e3o comprometidos para se propagar entre pacotes do ecossistema. A campanha est\u00e1 ligada a pacotes vinculados \u00e0 Namastex Labs, empresa brasileira que vende solu\u00e7\u00f5es com IA para agentes aut\u00f4nomos.<\/p>\n<p>Entre os pacotes afetados est\u00e3o @automagik\/genie, pgserve, @fairwords\/websocket, @fairwords\/loopback-connector-es, @openwebconcept\/design-tokens e @openwebconcept\/theme-owc, com 16 vers\u00f5es comprometidas. O pacote @automagik\/genie registrava aproximadamente 6,7 mil downloads semanais; pgserve, cerca de 1,3 mil. O primeiro lote malicioso do pgserve foi publicado em 21 de abril, com novas vers\u00f5es no mesmo dia.<\/p>\n<h3>O que o malware faz e como se espalha<\/h3>\n<p>O payload \u00e9 acionado na instala\u00e7\u00e3o via hook postinstall, sem intera\u00e7\u00e3o do usu\u00e1rio. Em seguida, o c\u00f3digo coleta credenciais ambiente, tokens, chaves de API e dados sens\u00edveis de nuvem, Kubernetes, Docker, Terraform e Vault, al\u00e9m de chaves SSH e hist\u00f3rico de shell. Tamb\u00e9m busca informa\u00e7\u00f5es em navegadores e carteiras de criptomoedas.<\/p>\n<p>Os dados coletados s\u00e3o enviados por dois canais: um webhook e um canister do ICP, rede descentralizada semelhante a blockchain. Quando h\u00e1 chave RSA, a exfiltra\u00e7\u00e3o usa criptografia h\u00edbrida AES-256-CBC com RSA-OAEP-SHA256. Essa dupla via dificulta o bloqueio do canal de comando e controle.<\/p>\n<h3>Propaga\u00e7\u00e3o autom\u00e1tica pelo npm e PyPI<\/h3>\n<p>A parte mais preocupante \u00e9 a autopropaga\u00e7\u00e3o. Ao identificar tokens de publica\u00e7\u00e3o npm, o malware injeta o payload malicioso em pacotes que a v\u00edtima pode publicar e republlica vers\u00f5es incrementadas. Pacotes infectados podem, ent\u00e3o, ser instalados por outros desenvolvedores, ampliando o alcance.<\/p>\n<p>O ataque tamb\u00e9m mira o PyPI. Se credenciais Python estiverem presentes, o script gera um payload via arquivo .pth executado na inicializa\u00e7\u00e3o do Python e usa o Twine para publicar pacotes infectados. A atua\u00e7\u00e3o em m\u00faltiplos ecossistemas amplia o risco de difus\u00e3o.<\/p>\n","protected":false},"excerpt":{"rendered":"<ul>\n<li>Novo ataque \u00e0 cadeia de suprimentos do npm usa comportamento de worm para roubar credenciais e se espalhar automaticamente por pacotes, identificado por Socket e StepSecurity em pacotes ligados \u00e0 Namastex Labs.<\/li>\n<li>Pacotes afetados listados incluem \u201c@automagik\/genie\u201d, \u201cpgserve\u201d, \u201c@fairwords\/websocket\u201d, \u201c@fairwords\/loopback-connector-es\u201d e \u201c@openwebconcept\/design-tokens\u201d\/\u201c@openwebconcept\/theme-owc\u201d; a Socket aponta 16 vers\u00f5es comprometidas.<\/li>\n<li>Malware coleta credenciais: tokens, chaves de API, credenciais de nuvem, configura\u00e7\u00f5es de Kubernetes e Docker, arquivos .env, chaves SSH e carteiras de criptomoedas; dados exfiltrados por webhook e por canister do Internet Computer Protocol (ICP).<\/li>\n<li>O payload \u00e9 ativado durante a instala\u00e7\u00e3o via postinstall e pode se propagaregon, inserindo payload malicioso em pacotes que a v\u00edtima tem permiss\u00e3o para publicar e republicando-os; h\u00e1 tamb\u00e9m capacidade de propaga\u00e7\u00e3o para PyPI.<\/li>\n<li>Recomenda\u00e7\u00f5es: remover todas as vers\u00f5es maliciosas, rotacionar tokens e credenciais, auditar pacotes relacionados e comparar tarballs com releases p\u00fablicos no GitHub para identificar discrep\u00e2ncias.<\/li>\n<\/ul>\n","protected":false},"author":15,"featured_media":552035,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"summary":"Ataque \u00e0 cadeia de suprimentos do npm usa worm com tokens roubados para se propagar, exfiltrar credenciais e alcan\u00e7ar ambientes com Docker, Kubernetes e carteiras virtuais","footnotes":""},"categories":[296,1],"tags":[84,104,105,101,132,189],"class_list":["post-551986","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ciencia","category-noticias","tag-acontecimentos-internacionais","tag-apps","tag-inteligencia-artificial","tag-pessoas","tag-startups","tag-tecnologia"],"_links":{"self":[{"href":"https:\/\/www.portaltela.com\/api\/wp\/v2\/posts\/551986","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.portaltela.com\/api\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.portaltela.com\/api\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.portaltela.com\/api\/wp\/v2\/users\/15"}],"replies":[{"embeddable":true,"href":"https:\/\/www.portaltela.com\/api\/wp\/v2\/comments?post=551986"}],"version-history":[{"count":0,"href":"https:\/\/www.portaltela.com\/api\/wp\/v2\/posts\/551986\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.portaltela.com\/api\/wp\/v2\/media\/552035"}],"wp:attachment":[{"href":"https:\/\/www.portaltela.com\/api\/wp\/v2\/media?parent=551986"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.portaltela.com\/api\/wp\/v2\/categories?post=551986"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.portaltela.com\/api\/wp\/v2\/tags?post=551986"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}