O Diário de Analistas de Plantão  |  Vol. 2  |  N. 3  |  Pp. 49–51  |  2026  |  ISSN xxxx-xxxx

Novo ataque do TeamPCP comprometeu Telnyx no PyPI

O grupo de ameaças TeamPCP, responsável pelos ataques à cadeia de suprimentos contra ferramentas como Trivy, KICS e LiteLLM, agora comprometeu o pacote Python telnyx [1].

Esse ataque é um novo comprometimento da cadeia de suprimentos no PyPI: o pacote legítimo telnyx foi adulterado e versões maliciosas, 4.87.1 e 4.87.2, foram publicadas para roubar segredos de desenvolvedores e pipelines CI/CD. A orientação prática é reverter para telnyx 4.87.0, tratar qualquer ambiente que tenha importado as versões maliciosas como comprometido e rotacionar credenciais/secrets imediatamente.

Não há um CVE associado diretamente ao comprometimento do pacote Telnyx no PyPI pelas versões maliciosas 4.87.1 e 4.87.2. Esse é um caso clássico de ataque à cadeia de suprimentos por roubo de credenciais de publicação, não uma vulnerabilidade no código ou repositório da Telnyx, o que explica a ausência de CVE até o momento.


O que foi afetado

telnyx é o SDK Python oficial da Telnyx, usado para integrar VoIP, SMS, WhatsApp, fax e IoT, e tem mais de 740 mil downloads por mês no PyPI, o que amplia muito o alcance potencial do incidente. Segundo os relatos, o malware foi injetado em telnyx/_client.py, então ele pode ser disparado automaticamente quando a biblioteca é importada por uma aplicação Python.


Impacto no Brasil

O Telnyx não é muito usado no Brasil em comparação com provedores locais que dominam o mercado de VoIP e SMS para empresas. Ele tem presença oficial no país com suporte a números brasileiros, vozes em português e uma subsidiária  mas sua adoção é mais nichada em desenvolvedores internacionais ou integrações globais. Para devs brasileiros usando Telnyx, o risco é baixo devido ao uso limitado, mas se você integra VoIP/SMS em apps Python, verifique dependências e considere migração para SDKs locais mais auditados.


Como o malware funciona

No Windows, a carga maliciosa baixa um arquivo hangup.wav, extrai dele um executável e o coloca na pasta de inicialização como msbuild.exe, garantindo persistência após reboot.


No Linux/macOS, ele usa um ringtone.wav para esconder a segunda fase por esteganografia em áudio, executa o coletor de credenciais em memória e exfiltra dados sensíveis; os relatórios citam roubo de SSH keys, tokens cloud, variáveis de ambiente, credenciais de Docker/npm/Git/Vault, históricos de shell e dados de carteiras cripto.


Por que isso é grave

O ponto mais perigoso é que o código malicioso roda no momento do import, então um projeto pode ser comprometido mesmo sem execução explícita de um binário suspeito. Além disso, o ataque parece ter sido feito com credenciais roubadas de publicação no PyPI, o que indica que o invasor já tinha acesso a segredos obtidos em etapas anteriores da campanha.

Os mantenedores da Telnyx estão investigando o roubo de credenciais de publicação e recomendam PyPI Trusted Publishers (OIDC) para evitar recorrências [1]. Use ferramentas como pip-audit ou Safety para checar pacotes, e sempre pin versões em lockfiles para evitar upgrades automáticos. 


CWEs

Esses CWEs focam em comprometimento de componentes ou dependências de terceiros, como o caso do Telnyx:


Referências

[1] Telnyx Python SDK: Supply Chain Security Notice

[2]  OpenID Connect para eliminar tokens API longos e prevenir ataques como o TeamPCP, evitando que repositórios confiáveis (ex.: GitHub Actions) publiquem diretamente.

  • Quickstart: https://docs.pypi.org/trusted-publishers/using-a-publisher/

  • Anúncio original: https://blog.pypi.org/posts/2023-04-20-introducing-trusted-publishers/


Nota de transparência: Essa publicação NÃO utilizou de ferramentas de Inteligência Artificial Generativa (LLM) para sua escrita, exceto para realização de pesquisa e validação de referências. Os demais o conteúdos foram elaborados e revisados pelo autor.

Categorias: Ataques, PyPI, Python, TeamPCP.