O Que É Typosquatting? Pacotes Maliciosos Com Nomes Parecidos
Typosquatting é registrar um pacote (ou domínio) com um nome quase idêntico a um popular, para que um único erro de digitação instale o código do atacante em vez do certo.
Pacotes populares são instalados milhões de vezes, e as pessoas digitam nomes errados. O typosquatting transforma isso em arma. Um atacante publica um pacote chamado requsts ou lodahs, apostando que uma fração dos desenvolvedores vai errar o dedo no nome real. O impostor roda código malicioso enquanto faz o suficiente para parecer real.
Os truques de nomeação
- Letras transpostas ou omitidas (
expresparaexpress). - Caracteres parecidos trocados (um
1por uml). - Pontuação adicionada ou removida (
python-dateutilvspython_dateutil). - Escopos ou sufixos plausíveis mas errados.
O que o impostor faz
Um typosquat geralmente re-exporta o pacote real para que as coisas pareçam funcionar, enquanto seu script de install silenciosamente exfiltra secrets ou planta um backdoor. A vítima pode nunca notar porque seu código ainda roda.
Por que a CI amplifica
Um erro de digitação em uma lista de dependências é commitado e depois instalado em cada execução de CI, multiplicando um erro por cada build e cada desenvolvedor. E o ambiente de CI detém os secrets mais valiosos para roubar.
Evitando typosquats
Copie nomes de pacotes da documentação oficial em vez de digitá-los, fixe versões exatas em um lockfile e rode dependency scanning que checa nomes contra listas de sabidamente maliciosos. Revisar cada dependência recém-adicionada no code review pega a maioria dos squats.
Quando um passa
A contenção importa: um typosquat que instala em um runner isolado e efêmero com credenciais escopadas e de vida curta e filtragem de egress encontra pouco que valha a pena roubar e não consegue persistir. O dano fica limitado a um job descartável.
Principais conclusões
- Typosquatting publica nomes de pacotes parecidos para pegar erros de digitação de desenvolvedores.
- O impostor imita o pacote real enquanto roda código malicioso.
- Lockfiles fixados, scanning e revisão cuidadosa mantêm os squats fora do build.