Descoberta e escopo
Socket.dev e analistas correlacionaram comportamento suspeito em nove pacotes aparentemente legítimos. A técnica do atacante foi fornecer implementações válidas (≈99% funcionais) que passaram por revisões e começaram a ser usadas, enquanto ocultavam cerca de 20 linhas de código malicioso em milhares de linhas legítimas para dificultar detecção manual.
Abordagem técnica
As rotinas maliciosas foram incorporadas como C# extension methods que interceptavam operações de banco de dados e comunicações com PLCs. A lógica verificava datas codificadas (gatilhos entre agosto de 2027 e junho de 2028) e, uma vez no período de ativação, aplicava probabilística de sabotagem: a cada operação poderia ser gerado um número aleatório (1–100) e, se superior a 80 (20% de chance), ocorria Process.GetCurrentProcess().Kill(), terminando o processo. Paralelamente, uma rotina de gravação (Sharp7Extend) provocava falhas silenciosas de escrita 80% das vezes após uma janela de 30–90 minutos, retornando zero em vez do resultado esperado.
Impacto operacional
Em ambientes de manufatura e controle industrial, essas falhas podem afetar atuadores, setpoints e sistemas de segurança, levando a interrupções de processo e riscos físicos. A ativação retardada e a probabilidade parcial aumentam a dificuldade de investigação e de correlação temporal entre a introdução do pacote e a ocorrência do incidente.
Recomendações e resposta
- Auditar dependências do repositório de pacotes e verificar histórico de downloads para identificar pacotes do alias shanhai666.
- Implementar varredura de dependências e políticas de aprovação antes de merge, com atenção a bibliotecas que atuam em PLCs e operações críticas.
- Monitorar padrões de execução incomuns, quedas abruptas de processos e resultados de escrita inconsistentes em sistemas SCADA/ICS.
- Considerar bloqueio de pacotes não aprovados em pipelines CI/CD e usar ferramentas de Software Composition Analysis (SCA) com regras para detectar lógica temporal/probabilística incomum.
Limites das informações
As análises descrevem o comportamento das bibliotecas e a extensão do download (~9.500), mas não fornecem contagem detalhada de ambientes produtivos afetados nem casos públicos de sabotagem operacional confirmada. As datas de gatilho relatadas abrangem 2027–2028, o que implica planejamento de longo prazo pelo ator malicioso.
Implicação para supply chain
O incidente reforça que pacotes com funcionalidade legítima podem ser usados como vetor de sabotagem: auditoria contínua de dependências, políticas de aprovação e revisão de código automatizada contra padrões anômalos (p.ex. checks de datas fixas e geração de números aleatórios ligados a ações destrutivas) são essenciais para ambientes industriais.