Numa indústria treinada para equiparar “mais recente” a “seguro”, isto parece imprudente, até olharmos para o que aconteceu esta primavera. Em dois dos piores ataques NPM do ano, muitas das pessoas mais expostas foram as que obtiveram versões mais recentes. Quando a biblioteca do cliente HTTP axios foi comprometida, os invasores lançaram duas versões envenenadas que lançaram um Trojan de acesso remoto em cada máquina que executou uma nova instalação durante um período de aproximadamente três horas. Se você estava fixado em uma versão limpa e não reinstalou, você dormiu durante ela. Parabéns para você. Semanas depois, logo após o lançamento de um node-ipc envenenado, o worm Mini Shai-Hulud se autopropagou através do TanStack e depois para Mistral, UiPath e uma longa cauda de pacotes baixados milhões de vezes por semana.

Como você se defende contra isso?

Talvez sem fazer nada. Afinal, a defesa mais eficaz contra o Mini Shai-Hulud não era um scanner ou uma assinatura. Foi um resfriamento. StepSecurity manteve versões recém-publicadas por um período configurável, cerca de 10 dias, antes de disponibilizá-las a qualquer pessoa. Os clientes em espera continuaram recebendo o último lançamento em boas condições e nunca foram expostos, enquanto o resto do mundo descobriu da maneira mais difícil.

Em outras palavras, a defesa que funcionou foi a fora de moda (e historicamente tola): não aceite a nova versão só porque é nova. Ironicamente, a resposta da indústria ao desenvolvimento da IA ​​parece ser adicionar mais dependências. O que poderia dar errado?